| tigerdog ( @ 2007-11-30 12:20:00 |
More on missing code...
I decided to do a little more investigation on the section of xpcom thread code that had entries for pretty much any platform except BeOS. I added a dummy BeOS section:
DisposeEventHandlerUPP(self->eventHandle rUPP);
RemoveEventHandler(self->eventHandlerRef) ;
+#elif defined(XP_BEOS)
+ /* Placeholder. need code to delete semaphores and port
+ */
+ #ifdef DEBUG
+ printf("pl_CleanupNativeNotifier HAS BEEN CALLED IN BEOS!!!!\n");
+ #endif
#endif
}
#if defined(_WIN32)
Just to see how often this bit of code is called by Firefox. Guess what? Fairly often - 14 times from launch to home page. So while I don't know what it does or if it's important to our port, I can at least say Firefox is trying to do something here.
It's possible that our unique window/thread structure and multiple restarts during launch make this code unwanted or unnecessary - we need the experts to weigh in on the subject.
Update:Well, we certainly don't want to delete ports at this point. I added code to do this and Firefox dies before the first window is ever created. It just shuts down and stops - no crash. So maybe I guessed right - if we delete ports here, we delete something needed for continued execution.
Isn't if fun to watch a non-dev try to figure out how code works? :)
I decided to do a little more investigation on the section of xpcom thread code that had entries for pretty much any platform except BeOS. I added a dummy BeOS section:
DisposeEventHandlerUPP(self->eventHandle
RemoveEventHandler(self->eventHandlerRef)
+#elif defined(XP_BEOS)
+ /* Placeholder. need code to delete semaphores and port
+ */
+ #ifdef DEBUG
+ printf("pl_CleanupNativeNotifier HAS BEEN CALLED IN BEOS!!!!\n");
+ #endif
#endif
}
#if defined(_WIN32)
Just to see how often this bit of code is called by Firefox. Guess what? Fairly often - 14 times from launch to home page. So while I don't know what it does or if it's important to our port, I can at least say Firefox is trying to do something here.
It's possible that our unique window/thread structure and multiple restarts during launch make this code unwanted or unnecessary - we need the experts to weigh in on the subject.
Update:Well, we certainly don't want to delete ports at this point. I added code to do this and Firefox dies before the first window is ever created. It just shuts down and stops - no crash. So maybe I guessed right - if we delete ports here, we delete something needed for continued execution.
Isn't if fun to watch a non-dev try to figure out how code works? :)