pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Firefox 24 doesn't restore session



Building with the patch below now for testing...

Martin
diff -r 60a097b0d9bd toolkit/components/osfile/modules/osfile_unix_back.jsm
--- a/toolkit/components/osfile/modules/osfile_unix_back.jsm    Wed Nov 06 
11:25:08 2013 +0100
+++ b/toolkit/components/osfile/modules/osfile_unix_back.jsm    Thu Nov 07 
11:59:12 2013 +0100
@@ -398,7 +398,12 @@
                     /*oflags*/Type.int,
                     /*mode*/  Type.int);
 
-       declareLazyFFI(SysFile,  "opendir", libc, "opendir", ctypes.default_abi,
+       if (OS.Constants.Sys.Name == "NetBSD")
+         declareLazyFFI(SysFile,  "opendir", libc, "__opendir30", 
ctypes.default_abi,
+                    /*return*/ Type.null_or_DIR_ptr,
+                    /*path*/   Type.path);
+       else
+         declareLazyFFI(SysFile,  "opendir", libc, "opendir", 
ctypes.default_abi,
                     /*return*/ Type.null_or_DIR_ptr,
                     /*path*/   Type.path);
 
@@ -437,6 +442,10 @@
          declareLazyFFI(SysFile,  "readdir", libc, "readdir$INODE64", 
ctypes.default_abi,
                      /*return*/Type.null_or_dirent_ptr,
                       /*dir*/   Type.DIR.in_ptr); // For MacOS X
+       } else if (OS.Constants.Sys.Name == "NetBSD") {
+         declareLazyFFI(SysFile,  "readdir", libc, "__readdir30", 
ctypes.default_abi,
+                      /*return*/Type.null_or_dirent_ptr,
+                      /*dir*/   Type.DIR.in_ptr); // Other Unices
        } else {
          declareLazyFFI(SysFile,  "readdir", libc, "readdir", 
ctypes.default_abi,
                       /*return*/Type.null_or_dirent_ptr,
@@ -547,6 +556,23 @@
          SysFile.fstat = function fstat(fd, buf) {
            return Stat.fxstat(ver, fd, buf);
          };
+       } else if (OS.Constants.Sys.Name == "NetBSD") {
+         // NetBSD 5.0 and newer
+         declareLazyFFI(SysFile,  "stat", libc, "__stat50", ctypes.default_abi,
+                      /*return*/ Type.negativeone_or_nothing,
+                      /*path*/   Type.path,
+                      /*buf*/    Type.stat.out_ptr
+                     );
+         declareLazyFFI(SysFile,  "lstat", libc, "__lstat50", 
ctypes.default_abi,
+                      /*return*/ Type.negativeone_or_nothing,
+                      /*path*/   Type.path,
+                      /*buf*/    Type.stat.out_ptr
+                     );
+         declareLazyFFI(SysFile,  "fstat", libc, "__fstat50", 
ctypes.default_abi,
+                      /*return*/ Type.negativeone_or_nothing,
+                      /*fd*/     Type.fd,
+                      /*buf*/    Type.stat.out_ptr
+                     );
        } else {
          // Mac OS X 32-bits, other Unix
          declareLazyFFI(SysFile,  "stat", libc, "stat", ctypes.default_abi,
@@ -589,12 +615,26 @@
          return result;
        };
 
-       declareLazyFFI(SysFile, "utimes", libc, "utimes", ctypes.default_abi,
+       if (OS.Constants.Sys.Name == "NetBSD")
+         declareLazyFFI(SysFile, "utimes", libc, "__utimes50", 
ctypes.default_abi,
                       /*return*/     Type.negativeone_or_nothing,
                       /*path*/       Type.path,
                       /*timeval[2]*/ Type.timevals.out_ptr
                       );
-       declareLazyFFI(SysFile, "futimes", libc, "futimes", ctypes.default_abi,
+       else
+         declareLazyFFI(SysFile, "utimes", libc, "utimes", ctypes.default_abi,
+                      /*return*/     Type.negativeone_or_nothing,
+                      /*path*/       Type.path,
+                      /*timeval[2]*/ Type.timevals.out_ptr
+                      );
+       if (OS.Constants.Sys.Name == "NetBSD")
+         declareLazyFFI(SysFile, "futimes", libc, "__futimes50", 
ctypes.default_abi,
+                      /*return*/     Type.negativeone_or_nothing,
+                      /*fd*/         Type.fd,
+                      /*timeval[2]*/ Type.timevals.out_ptr
+                      );
+       else
+         declareLazyFFI(SysFile, "futimes", libc, "futimes", 
ctypes.default_abi,
                       /*return*/     Type.negativeone_or_nothing,
                       /*fd*/         Type.fd,
                       /*timeval[2]*/ Type.timevals.out_ptr


Home | Main Index | Thread Index | Old Index