No, posix_spawn can definitely be implemented in userland, but all the implementations out there are kernelspace. But great suggestion on OpenGroup (why didn't I think of that?!), because after some fiddling around on their site, I finally found their "ideal" userland posix_spawn, and we can use that. It will be a bit slower, but it should work. We can't use the *BSD ones, sorry, those are kernel-land (I already looked into it and it was the first place I thought of). For posterity, we'll build on this: http://pubs.opengroup.org/onlinepubs/000095399/xrat/xsh_chap03.html
NSPR does use posix_spawn too, but only as a fork() substitute, and waaay back in one of the Firefox 4 betas I already rewrote it.
Nevertheless, the current system works and I won't worry about this until Mozilla makes us worry about it. But thanks for giving me the right place to look!
I already fixed the bookmarks menu. Amusingly, this section of code is nearly identical to the section in Classilla, with some changes for CoreFoundation. Mozilla pulled the old OS 9-era code and put in an Obj C function that doesn't seem to handle the UI correctly, so I reverted it.
NSPR does use posix_spawn too, but only as a fork() substitute, and waaay back in one of the Firefox 4 betas I already rewrote it.
Nevertheless, the current system works and I won't worry about this until Mozilla makes us worry about it. But thanks for giving me the right place to look!
I already fixed the bookmarks menu. Amusingly, this section of code is nearly identical to the section in Classilla, with some changes for CoreFoundation. Mozilla pulled the old OS 9-era code and put in an Obj C function that doesn't seem to handle the UI correctly, so I reverted it.