Blame SOURCES/esc-1.1.0-fix14.patch

ec4b96
diff -up ./esc/coreconf/Linux3.3.mk.fix14 ./esc/coreconf/Linux3.3.mk
ec4b96
--- ./esc/coreconf/Linux3.3.mk.fix14	2012-05-10 15:09:37.298143842 -0700
ec4b96
+++ ./esc/coreconf/Linux3.3.mk	2012-05-10 15:09:37.298143842 -0700
ec4b96
@@ -0,0 +1,35 @@
ec4b96
+# BEGIN COPYRIGHT BLOCK
ec4b96
+# This Program is free software; you can redistribute it and/or modify it under
ec4b96
+# the terms of the GNU General Public License as published by the Free Software
ec4b96
+# Foundation; version 2 of the License.
ec4b96
+#
ec4b96
+# This Program is distributed in the hope that it will be useful, but WITHOUT
ec4b96
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
ec4b96
+# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
ec4b96
+#
ec4b96
+# You should have received a copy of the GNU General Public License along with
ec4b96
+# this Program; if not, write to the Free Software Foundation, Inc., 59 Temple
ec4b96
+# Place, Suite 330, Boston, MA 02111-1307 USA.
ec4b96
+#
ec4b96
+# Copyright (C) 2005 Red Hat, Inc.
ec4b96
+# All rights reserved.
ec4b96
+# END COPYRIGHT BLOCK
ec4b96
+
ec4b96
+#
ec4b96
+# Config stuff for Linux 3.3 (ELF)
ec4b96
+#
ec4b96
+
ec4b96
+include $(CORE_DEPTH)/coreconf/Linux.mk
ec4b96
+
ec4b96
+OS_REL_CFLAGS   += -DLINUX2_1
ec4b96
+MKSHLIB         = $(CC) -shared -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
ec4b96
+ifdef BUILD_OPT
ec4b96
+            OPTIMIZER       = -O2
ec4b96
+endif
ec4b96
+
ec4b96
+ifdef MAPFILE
ec4b96
+	MKSHLIB += -Wl,--version-script,$(MAPFILE)
ec4b96
+endif
ec4b96
+PROCESS_MAP_FILE = grep -v ';-' $(LIBRARY_NAME).def | \
ec4b96
+        sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@
ec4b96
+
ec4b96
diff -up ./esc/coreconf/Linux3.4.mk.fix14 ./esc/coreconf/Linux3.4.mk
ec4b96
--- ./esc/coreconf/Linux3.4.mk.fix14	2012-05-10 15:09:37.298143842 -0700
ec4b96
+++ ./esc/coreconf/Linux3.4.mk	2012-05-10 15:09:37.298143842 -0700
ec4b96
@@ -0,0 +1,35 @@
ec4b96
+# BEGIN COPYRIGHT BLOCK
ec4b96
+# This Program is free software; you can redistribute it and/or modify it under
ec4b96
+# the terms of the GNU General Public License as published by the Free Software
ec4b96
+# Foundation; version 2 of the License.
ec4b96
+#
ec4b96
+# This Program is distributed in the hope that it will be useful, but WITHOUT
ec4b96
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
ec4b96
+# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
ec4b96
+#
ec4b96
+# You should have received a copy of the GNU General Public License along with
ec4b96
+# this Program; if not, write to the Free Software Foundation, Inc., 59 Temple
ec4b96
+# Place, Suite 330, Boston, MA 02111-1307 USA.
ec4b96
+#
ec4b96
+# Copyright (C) 2005 Red Hat, Inc.
ec4b96
+# All rights reserved.
ec4b96
+# END COPYRIGHT BLOCK
ec4b96
+
ec4b96
+#
ec4b96
+# Config stuff for Linux 3.4 (ELF)
ec4b96
+#
ec4b96
+
ec4b96
+include $(CORE_DEPTH)/coreconf/Linux.mk
ec4b96
+
ec4b96
+OS_REL_CFLAGS   += -DLINUX2_1
ec4b96
+MKSHLIB         = $(CC) -shared -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
ec4b96
+ifdef BUILD_OPT
ec4b96
+            OPTIMIZER       = -O2
ec4b96
+endif
ec4b96
+
ec4b96
+ifdef MAPFILE
ec4b96
+	MKSHLIB += -Wl,--version-script,$(MAPFILE)
ec4b96
+endif
ec4b96
+PROCESS_MAP_FILE = grep -v ';-' $(LIBRARY_NAME).def | \
ec4b96
+        sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@
ec4b96
+
ec4b96
diff -up ./esc/coreconf/Linux3.5.mk.fix14 ./esc/coreconf/Linux3.5.mk
ec4b96
--- ./esc/coreconf/Linux3.5.mk.fix14	2012-05-10 15:09:37.299143830 -0700
ec4b96
+++ ./esc/coreconf/Linux3.5.mk	2012-05-10 15:09:37.298143842 -0700
ec4b96
@@ -0,0 +1,35 @@
ec4b96
+# BEGIN COPYRIGHT BLOCK
ec4b96
+# This Program is free software; you can redistribute it and/or modify it under
ec4b96
+# the terms of the GNU General Public License as published by the Free Software
ec4b96
+# Foundation; version 2 of the License.
ec4b96
+#
ec4b96
+# This Program is distributed in the hope that it will be useful, but WITHOUT
ec4b96
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
ec4b96
+# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
ec4b96
+#
ec4b96
+# You should have received a copy of the GNU General Public License along with
ec4b96
+# this Program; if not, write to the Free Software Foundation, Inc., 59 Temple
ec4b96
+# Place, Suite 330, Boston, MA 02111-1307 USA.
ec4b96
+#
ec4b96
+# Copyright (C) 2005 Red Hat, Inc.
ec4b96
+# All rights reserved.
ec4b96
+# END COPYRIGHT BLOCK
ec4b96
+
ec4b96
+#
ec4b96
+# Config stuff for Linux 3.5 (ELF)
ec4b96
+#
ec4b96
+
ec4b96
+include $(CORE_DEPTH)/coreconf/Linux.mk
ec4b96
+
ec4b96
+OS_REL_CFLAGS   += -DLINUX2_1
ec4b96
+MKSHLIB         = $(CC) -shared -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
ec4b96
+ifdef BUILD_OPT
ec4b96
+            OPTIMIZER       = -O2
ec4b96
+endif
ec4b96
+
ec4b96
+ifdef MAPFILE
ec4b96
+	MKSHLIB += -Wl,--version-script,$(MAPFILE)
ec4b96
+endif
ec4b96
+PROCESS_MAP_FILE = grep -v ';-' $(LIBRARY_NAME).def | \
ec4b96
+        sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@
ec4b96
+
ec4b96
diff -up ./esc/src/app/xpcom/Makefile.sdk.fix14 ./esc/src/app/xpcom/Makefile.sdk
ec4b96
--- ./esc/src/app/xpcom/Makefile.sdk.fix14	2012-05-10 15:09:37.293143904 -0700
ec4b96
+++ ./esc/src/app/xpcom/Makefile.sdk	2012-05-10 15:25:17.138394220 -0700
ec4b96
@@ -106,15 +106,14 @@ endif
ec4b96
 endif
ec4b96
 
ec4b96
 ifeq ($(OS_ARCH),Darwin)
ec4b96
-GECKO_LD_LIBS=-L$(GECKO_SDK_PATH)/lib    -W1,  $(GECKO_SDK_PATH)/lib/libxpcomglue.a -L$(XUL_FRAMEWORK_BIN_PATH) -lnss3 -lssl3 -lsoftokn3 -lplds4 -lplc4 -lnssutil3
ec4b96
+GECKO_LD_LIBS=-L$(GECKO_SDK_PATH)/lib    -W1,  $(GECKO_SDK_PATH)/lib/libxpcomglue.a -L$(XUL_FRAMEWORK_BIN_PATH) -lnss3 -lssl3 -lsoftokn3 -lplds4 -lplc4 -lnssutil3 
ec4b96
 endif
ec4b96
 
ec4b96
-
ec4b96
 ifeq ($(OS_ARCH),Linux)
ec4b96
-CPPFLAGS += -fno-rtti \
ec4b96
-                -fno-exceptions \
ec4b96
-                -fshort-wchar -fPIC -std=gnu++0x
ec4b96
-GECKO_LD_LIBS=-L$(GECKO_SDK_PATH)/lib    $(GECKO_SDK_PATH)/lib/libxpcomglue.a -lnssutil3 -lnss3 -lcrmf -lssl3 -lsmime3 -lplds4 -lplc4 -lnspr4 -lpthread -ldl
ec4b96
+CPPFLAGS += -g -fno-rtti \
ec4b96
+                -DXPCOM_GLUE_USE_NSPR -fno-exceptions \
ec4b96
+                -fshort-wchar -fPIC -std=gnu++0x  
ec4b96
+GECKO_LD_LIBS=-L$(GECKO_SDK_PATH)/lib  -lnssutil3 -lnss3 -lcrmf -lssl3 -lsmime3 -lplds4 -lplc4 -lnspr4 -lpthread -ldl -L$(GECKO_SDK_PATH)/lib -lxpcomglue_s -lxpcom
ec4b96
 endif
ec4b96
 
ec4b96
 ifeq ($(OS_ARCH),WINNT)
ec4b96
@@ -128,15 +127,15 @@ endif
ec4b96
 # #include "mozilla-config.h" to each of your .cpp files. 
ec4b96
 #GECKO_CONFIG_INCLUDE = -include mozilla-config.h 
ec4b96
 
ec4b96
-GECKO_DEFINES  = -DXPCOM_GLUE  -DMOZILLA_CLIENT
ec4b96
+GECKO_DEFINES  = -DXPCOM_GLUE   -DMOZILLA_CLIENT
ec4b96
 
ec4b96
 ifdef ESC_VERSION
ec4b96
 GECKO_DEFINES += -DESC_VERSION=$(ESC_VERSION)
ec4b96
 endif
ec4b96
 
ec4b96
-ifdef GECKO_BIN_PATH
ec4b96
-GECKO_DEFINES += -DGECKO_BIN_PATH=$(GECKO_BIN_PATH)
ec4b96
-endif
ec4b96
+#ifdef GECKO_BIN_PATH
ec4b96
+#GECKO_DEFINES += -DGECKO_BIN_PATH=$(GECKO_BIN_PATH)
ec4b96
+#endif
ec4b96
 
ec4b96
 NSS_INCLUDE =  /usr/include/nss3
ec4b96
 NSPR_INCLUDE =  /usr/include/nspr4
ec4b96
@@ -162,7 +161,7 @@ COOL_LDFLAGS += -lsystemStubs  -framewor
ec4b96
 endif
ec4b96
  
ec4b96
 GECKO_LDFLAGS= -lnspr4 \
ec4b96
-	-lplds4  -lplc4 -ldl  -lpthread  -Wl -z   \
ec4b96
+	-lplds4  -lplc4 -ldl  -lpthread   -z   \
ec4b96
         $(GECKO_LD_LIBS)
ec4b96
 
ec4b96
 ifeq ($(OS_ARCH),WINNT)
ec4b96
@@ -215,7 +214,7 @@ ifeq ($(OS_ARCH),Linux)
ec4b96
 
ec4b96
 	$(CXX)   $(CPPFLAGS) -shared -o $(TARGET) $(OBJECT)  $(GECKO_DEFINES) $(GECKO_INCLUDES)  $(GECKO_LDFLAGS) $(COOL_LDFLAGS)
ec4b96
 	chmod +x $(TARGET)
ec4b96
-	strip $(TARGET)
ec4b96
+	#strip $(TARGET)
ec4b96
 endif
ec4b96
 
ec4b96
 ifeq ($(OS_ARCH),WINNT)
ec4b96
diff -up ./esc/src/app/xpcom/rhCoolKey.cpp.fix14 ./esc/src/app/xpcom/rhCoolKey.cpp
ec4b96
--- ./esc/src/app/xpcom/rhCoolKey.cpp.fix14	2012-05-10 15:09:37.294143891 -0700
ec4b96
+++ ./esc/src/app/xpcom/rhCoolKey.cpp	2012-05-10 15:09:37.300143818 -0700
ec4b96
@@ -16,7 +16,6 @@
ec4b96
  * END COPYRIGHT BLOCK **/
ec4b96
 
ec4b96
 #define FORCE_PR_LOG 1
ec4b96
-
ec4b96
 #include <stdio.h>
ec4b96
 #include "rhCoolKey.h"
ec4b96
 #include "CoolKey.h"
ec4b96
@@ -34,7 +33,7 @@
ec4b96
 #include "nsIPrefBranch.h"
ec4b96
 #include "nsIPrefService.h"
ec4b96
 #include "nsCOMPtr.h"
ec4b96
-#include "nsIProxyObjectManager.h"
ec4b96
+#include "nsThreadUtils.h"
ec4b96
 #include "nsIObserver.h"
ec4b96
 #include "nsIObserverService.h"
ec4b96
 #include "nsXPCOMGlue.h"
ec4b96
@@ -91,6 +90,7 @@ std::list<CoolKeyNode*>rhCoolKey::gASCAv
ec4b96
 std::list< nsCOMPtr <rhIKeyNotify>  > rhCoolKey::gNotifyListeners;
ec4b96
 
ec4b96
 PRLock* rhCoolKey::certCBLock=NULL;
ec4b96
+PRLock* rhCoolKey::eventLock= NULL;
ec4b96
 
ec4b96
 PRBool rhCoolKey::gAutoEnrollBlankTokens = PR_FALSE; 
ec4b96
 
ec4b96
@@ -162,6 +162,70 @@ ASCCalcBase64DecodedLength(const char *a
ec4b96
 
ec4b96
   return ((numValidChars / 4) * 3) - numEqualSigns;
ec4b96
 }
ec4b96
+class CoolKeyResultTask  : public  nsRunnable
ec4b96
+{
ec4b96
+public:
ec4b96
+  ~CoolKeyResultTask() {
ec4b96
+
ec4b96
+      char tBuff[56];
ec4b96
+      PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s ~CoolKeyResultTask thread: %p \n",GetTStamp(tBuff,56),PR_GetCurrentThread()));
ec4b96
+
ec4b96
+      if (mKeyID) {
ec4b96
+          free(mKeyID);
ec4b96
+      }
ec4b96
+
ec4b96
+      if (mStrData) {
ec4b96
+          free(mStrData);
ec4b96
+      }
ec4b96
+
ec4b96
+  }
ec4b96
+
ec4b96
+  CoolKeyResultTask(unsigned long keyType, const char *keyID, unsigned long keyState,
ec4b96
+                    unsigned long data, const char *strData, rhICoolKey *listener)
ec4b96
+    : mKeyType(keyType), mKeyState(keyState), 
ec4b96
+      mData(data), mListener(listener)
ec4b96
+  {
ec4b96
+
ec4b96
+     mStrData = NULL;
ec4b96
+     mKeyID   = NULL;
ec4b96
+
ec4b96
+     MOZ_ASSERT(!NS_IsMainThread());
ec4b96
+     
ec4b96
+     if (keyID) {
ec4b96
+         mKeyID = strdup(keyID);
ec4b96
+     }
ec4b96
+
ec4b96
+     if (strData) {
ec4b96
+         mStrData = strdup(strData);
ec4b96
+     }
ec4b96
+
ec4b96
+     char tBuff[56];
ec4b96
+
ec4b96
+     PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s CoolKeyResultTask::CoolKeyResultTask thread:   %p keyID %s \n",GetTStamp(tBuff,56),PR_GetCurrentThread(),mKeyID));
ec4b96
+
ec4b96
+  }
ec4b96
+
ec4b96
+
ec4b96
+  NS_IMETHOD Run() {
ec4b96
+    MOZ_ASSERT(NS_IsMainThread());
ec4b96
+
ec4b96
+     char tBuff[56];
ec4b96
+     PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s CoolKeyResultTask::Run thread: %p \n",GetTStamp(tBuff,56),PR_GetCurrentThread()));
ec4b96
+   
ec4b96
+     if (mListener != NULL) {
ec4b96
+         mListener->RhNotifyKeyStateChange(mKeyType, mKeyID, mKeyState, 
ec4b96
+                        mData, mStrData);
ec4b96
+     } 
ec4b96
+   }
ec4b96
+
ec4b96
+private: 
ec4b96
+   unsigned long mKeyType;
ec4b96
+   char *mKeyID;
ec4b96
+   unsigned long mKeyState;
ec4b96
+   unsigned long mData;
ec4b96
+   char *mStrData; 
ec4b96
+   rhICoolKey *mListener;
ec4b96
+};
ec4b96
 
ec4b96
 unsigned int
ec4b96
 ASCCalcBase64EncodedLength(unsigned int aDataLength)
ec4b96
@@ -200,6 +264,14 @@ rhCoolKey::rhCoolKey()
ec4b96
         exit(1);
ec4b96
     }
ec4b96
 
ec4b96
+    eventLock = PR_NewLock();
ec4b96
+
ec4b96
+    if(!eventLock) {
ec4b96
+       PR_LOG( coolKeyLog, PR_LOG_ERROR, ("%s Failed to create event lock exiting! \n", GetTStamp(tBuff,56)));
ec4b96
+       exit(1);
ec4b96
+    }
ec4b96
+
ec4b96
+
ec4b96
     PRBool res = InitInstance();
ec4b96
 
ec4b96
     if(res == PR_FALSE)
ec4b96
@@ -221,6 +293,10 @@ rhCoolKey::~rhCoolKey()
ec4b96
     if(certCBLock) {
ec4b96
         PR_DestroyLock(certCBLock);
ec4b96
     }
ec4b96
+
ec4b96
+    if(eventLock) {
ec4b96
+        PR_DestroyLock(eventLock);
ec4b96
+    }
ec4b96
 }
ec4b96
 
ec4b96
 void rhCoolKey::ShutDownInstance()
ec4b96
@@ -255,8 +331,17 @@ HRESULT rhCoolKey::Dispatch( rhICoolKey
ec4b96
     unsigned long keyType, const char *keyID, unsigned long keyState,
ec4b96
     unsigned long data, const char *strData)
ec4b96
 {
ec4b96
-    return listener->RhNotifyKeyStateChange(keyType,keyID, keyState, 
ec4b96
-			data, strData);
ec4b96
+
ec4b96
+    char tBuff[56];
ec4b96
+
ec4b96
+    PR_Lock(eventLock);
ec4b96
+    PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s rhCoolKey::Dispatch: thead:  %p \n",GetTStamp(tBuff,56),PR_GetCurrentThread()));
ec4b96
+    nsCOMPtr<nsIRunnable>  result = new CoolKeyResultTask(keyType, keyID,keyState, data, strData, listener);
ec4b96
+
ec4b96
+    NS_DispatchToMainThread(result);
ec4b96
+
ec4b96
+    PR_Unlock(eventLock);
ec4b96
+    return  1;  
ec4b96
 }
ec4b96
 
ec4b96
 HRESULT rhCoolKey::Reference( rhICoolKey *listener )
ec4b96
@@ -536,34 +621,6 @@ PRBool rhCoolKey::InitInstance()
ec4b96
 
ec4b96
     PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s rhCoolKey::InitInstance %p \n",GetTStamp(tBuff,56),this));
ec4b96
 
ec4b96
-    char xpcom_path[4096];
ec4b96
-    xpcom_path[0] = 0;
ec4b96
-/*
ec4b96
-    static const GREVersionRange greVersion = 
ec4b96
-    {
ec4b96
-    "1.9", PR_TRUE,
ec4b96
-    "9.9", PR_TRUE
ec4b96
-    };
ec4b96
-
ec4b96
-    nsresult rv = GRE_GetGREPathWithProperties(&greVersion, 1, nsnull, 0, xpcom_path, 4096);
ec4b96
-    if (NS_FAILED(rv)) {
ec4b96
-        return PR_FALSE;
ec4b96
-    }
ec4b96
-
ec4b96
-*/
ec4b96
-
ec4b96
-    char *grePath = (char *) GETSTRING(GECKO_BIN_PATH);
ec4b96
-
ec4b96
-    
ec4b96
-    snprintf(xpcom_path,4096,"%s%s",grePath,"libxpcom.so");
ec4b96
-
ec4b96
-    char *lib_name =(char *) XPCOM_LIB_NAME ;
ec4b96
-
ec4b96
-  
ec4b96
-    PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s rhCoolKey::xpcom_path %s \n",GetTStamp(tBuff,56),xpcom_path)); 
ec4b96
-
ec4b96
-    XPCOMGlueStartup("/usr/lib/xulrunner-2/libxpcom.so");
ec4b96
-
ec4b96
     nssComponent
ec4b96
     = do_GetService(PSM_COMPONENT_CONTRACTID); 
ec4b96
 
ec4b96
@@ -640,23 +697,8 @@ PRBool rhCoolKey::InitInstance()
ec4b96
 
ec4b96
 rhICoolKey* rhCoolKey::CreateProxyObject()
ec4b96
 {
ec4b96
-    char tBuff[56];
ec4b96
-    rhICoolKey *proxyObject = NULL;
ec4b96
-
ec4b96
-    PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s rhCoolKey::CreateProxyObject: \n",GetTStamp(tBuff,56)));
ec4b96
-
ec4b96
-    nsCOMPtr<nsIProxyObjectManager> manager =
ec4b96
-            do_GetService(NS_XPCOMPROXY_CONTRACTID);
ec4b96
-
ec4b96
-    PR_ASSERT(manager);
ec4b96
-
ec4b96
-
ec4b96
-    manager->GetProxyForObject(NULL, NS_GET_IID(rhICoolKey), this, NS_PROXY_SYNC | NS_PROXY_ALWAYS, (void**)&proxyObject);
ec4b96
-
ec4b96
-    PR_LOG( coolKeyLog, PR_LOG_DEBUG, ("%s rhCoolKey::CreateProxyObject: original: %p proxy %p  \n",GetTStamp(tBuff,56),this,proxyObject));
ec4b96
-
ec4b96
-    return proxyObject;
ec4b96
-   
ec4b96
+    // Now we are using nsRunnable, no more proxy object manager.
ec4b96
+    return this;
ec4b96
 }
ec4b96
 
ec4b96
 CoolKeyNode* rhCoolKey::GetCoolKeyInfo(unsigned long aKeyType, const char * aKeyID)
ec4b96
diff -up ./esc/src/app/xpcom/rhCoolKey.h.fix14 ./esc/src/app/xpcom/rhCoolKey.h
ec4b96
--- ./esc/src/app/xpcom/rhCoolKey.h.fix14	2012-05-10 15:09:37.274144142 -0700
ec4b96
+++ ./esc/src/app/xpcom/rhCoolKey.h	2012-05-10 15:09:37.300143818 -0700
ec4b96
@@ -120,6 +120,7 @@ protected:
ec4b96
     static std::list< nsCOMPtr <rhIKeyNotify> > gNotifyListeners;
ec4b96
 
ec4b96
     static PRLock* certCBLock;
ec4b96
+    static PRLock* eventLock;
ec4b96
 
ec4b96
     rhICoolKey* mProxy;
ec4b96
 
ec4b96
diff -up ./esc/src/app/xul/esc/application.ini.fix14 ./esc/src/app/xul/esc/application.ini
ec4b96
--- ./esc/src/app/xul/esc/application.ini.fix14	2012-05-10 15:09:37.295143878 -0700
ec4b96
+++ ./esc/src/app/xul/esc/application.ini	2012-05-10 15:09:37.300143818 -0700
ec4b96
@@ -25,11 +25,11 @@ Vendor=RedHat
ec4b96
 Name=ESC
ec4b96
 ;
ec4b96
 ; This field specifies your application's version.  This field is optional.
ec4b96
-Version=1.1.0-15
ec4b96
+Version=1.1.0-16
ec4b96
 ;
ec4b96
 ; This field specifies your application's build ID (timestamp).  This field is
ec4b96
 ; required.
ec4b96
-BuildID=0000001016
ec4b96
+BuildID=0000001017
ec4b96
 ;
ec4b96
 ; This ID is just an example.  Every XUL app ought to have it's own unique ID.
ec4b96
 ; You can use the microsoft "guidgen" or "uuidgen" tools, or go on
ec4b96
diff -up ./esc/src/app/xul/esc/chrome/content/esc/password.xul.fix14 ./esc/src/app/xul/esc/chrome/content/esc/password.xul
ec4b96
--- ./esc/src/app/xul/esc/chrome/content/esc/password.xul.fix14	2012-05-10 15:09:37.251144429 -0700
ec4b96
+++ ./esc/src/app/xul/esc/chrome/content/esc/password.xul	2012-05-10 15:09:37.301143805 -0700
ec4b96
@@ -27,7 +27,6 @@
ec4b96
 
ec4b96
 <stringbundle id="esc_strings" src="chrome://esc/locale/esc.properties"/>
ec4b96
 <script src="password.js"/>
ec4b96
-<script src="TRAY.js"/>
ec4b96
 
ec4b96
 <spacer class = "horSpacerVeryShort"/>
ec4b96
  <grid>
ec4b96
diff -up ./esc/src/lib/coolkey/CoolKeyHandler.cpp.fix14 ./esc/src/lib/coolkey/CoolKeyHandler.cpp
ec4b96
--- ./esc/src/lib/coolkey/CoolKeyHandler.cpp.fix14	2009-02-03 17:43:47.000000000 -0800
ec4b96
+++ ./esc/src/lib/coolkey/CoolKeyHandler.cpp	2012-05-10 15:09:37.302143792 -0700
ec4b96
@@ -451,7 +451,6 @@ HRESULT CoolKeyHandler::Init(const CoolK
ec4b96
     PR_LOG( coolKeyLogHN, PR_LOG_DEBUG, ("%s CoolKeyHandler::Init:\n",GetTStamp(tBuff,56)));
ec4b96
 
ec4b96
     bool connected = false;
ec4b96
-    PRThread*  cThread = NULL;
ec4b96
     const char *readerName =  NULL;
ec4b96
 
ec4b96
     if (!aKey || aKey->mKeyType != eCKType_CoolKey ||  !aKey->mKeyID) {
ec4b96
@@ -461,9 +460,6 @@ HRESULT CoolKeyHandler::Init(const CoolK
ec4b96
   
ec4b96
     readerName = GetReaderNameForKeyID(aKey);
ec4b96
 
ec4b96
-    cThread = PR_GetCurrentThread();
ec4b96
-
ec4b96
-
ec4b96
     mKey = *aKey;
ec4b96
 
ec4b96
   
ec4b96
diff -up ./esc/src/lib/coolkey/SmartCardMonitoringThread.cpp.fix14 ./esc/src/lib/coolkey/SmartCardMonitoringThread.cpp
ec4b96
--- ./esc/src/lib/coolkey/SmartCardMonitoringThread.cpp.fix14	2012-05-10 15:09:37.250144442 -0700
ec4b96
+++ ./esc/src/lib/coolkey/SmartCardMonitoringThread.cpp	2012-05-10 15:09:37.302143792 -0700
ec4b96
@@ -29,6 +29,9 @@
ec4b96
 
ec4b96
 #include <assert.h>
ec4b96
 #include <time.h>
ec4b96
+#ifdef LINUX
ec4b96
+#include <unistd.h>
ec4b96
+#endif
ec4b96
 
ec4b96
 static PRLogModuleInfo *coolKeyLogSC = PR_NewLogModule("coolKeySmart");
ec4b96