]> git.saurik.com Git - cycript.git/blobdiff - Handler.cpp
Also use CXType walker to for function prototypes.
[cycript.git] / Handler.cpp
index a49fcb659e956193f0548b2b7376b83df04e15cb..da458d6e7bb5ca4fedc4e3a8ebe92ed00c5fc98e 100644 (file)
@@ -1,5 +1,5 @@
-/* Cycript - Optimizing JavaScript Compiler/Runtime
- * Copyright (C) 2009-2015  Jay Freeman (saurik)
+/* Cycript - The Truly Universal Scripting Language
+ * Copyright (C) 2009-2016  Jay Freeman (saurik)
 */
 
 /* GNU Affero General Public License, Version 3 {{{ */
 */
 
 /* GNU Affero General Public License, Version 3 {{{ */
@@ -166,7 +166,7 @@ static void CYHandleSocket(const char *path) {
     address.sun_family = AF_UNIX;
     strcpy(address.sun_path, path);
 
     address.sun_family = AF_UNIX;
     strcpy(address.sun_path, path);
 
-    _syscall(connect(socket, reinterpret_cast<sockaddr *>(&address), SUN_LEN(&address)));
+    _syscall(connect(socket, reinterpret_cast<sockaddr *>(&address), sizeof(address)));
 
     CYInitializeDynamic();
     CYHandleClient(socket);
 
     CYInitializeDynamic();
     CYHandleClient(socket);
@@ -189,7 +189,11 @@ _extern char *MSmain0(int argc, char *argv[]) { try {
     if (handle == NULL) {
         Dl_info info;
         _assert(dladdr(reinterpret_cast<void *>(&MSmain0), &info) != 0);
     if (handle == NULL) {
         Dl_info info;
         _assert(dladdr(reinterpret_cast<void *>(&MSmain0), &info) != 0);
+#ifdef __ANDROID__
+        handle = dlopen(info.dli_fname, 0);
+#else
         handle = dlopen(info.dli_fname, RTLD_NOLOAD);
         handle = dlopen(info.dli_fname, RTLD_NOLOAD);
+#endif
     }
 
     return NULL;
     }
 
     return NULL;