Loading...
libkern/c++/OSSymbol.cpp xnu-3248.50.21 xnu-3789.31.2
--- xnu/xnu-3248.50.21/libkern/c++/OSSymbol.cpp
+++ xnu/xnu-3789.31.2/libkern/c++/OSSymbol.cpp
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000-2007 Apple Inc. All rights reserved.
+ * Copyright (c) 2000-2016 Apple Inc. All rights reserved.
  *
  * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  * 
@@ -98,14 +98,14 @@
     static void *operator new(size_t size);
     static void operator delete(void *mem, size_t size);
 
-    OSSymbolPool() { };
+    OSSymbolPool() { }
     OSSymbolPool(const OSSymbolPool *old);
     virtual ~OSSymbolPool();
 
     bool init();
 
-    inline void closeGate() { lck_mtx_lock(poolGate); };
-    inline void openGate()  { lck_mtx_unlock(poolGate); };
+    inline void closeGate() { lck_mtx_lock(poolGate); }
+    inline void openGate()  { lck_mtx_unlock(poolGate); }
 
     OSSymbol *findSymbol(const char *cString) const;
     OSSymbol *insertSymbol(OSSymbol *sym);
@@ -501,7 +501,7 @@
 	    newSymb->OSString::free();
     }
     
-    oldSymb->retain();	// Retain the old symbol before releasing the lock.
+    if (oldSymb) oldSymb->retain();    // Retain the old symbol before releasing the lock.
 
     pool->openGate();
     return oldSymb;