tigerdog ([info]tigerdog) wrote in [info]bezilla,
@ 2007-11-30 12:20:00
Previous Entry  Add to memories!  Tell a Friend!  Next Entry
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->eventHandlerUPP);
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? :)



(Post a new comment)


(Anonymous)
2007-12-01 07:03 am UTC (link)
> Isn't if fun to watch a non-dev try to figure out how code works? :)

It is not unusual for great discoveries to be made that way, as those who know can be limited by their knowledge, and for those who don't it is easier to think outside of the box.

Don't give up!

(Reply to this) (Thread)


[info]kokimare
2007-12-01 07:04 am UTC (link)
oops! forgot to login...

(Reply to this) (Parent)


[info]tqh
2007-12-01 09:01 am UTC (link)
If we need to do anything it would just be removing the 'in transit' messages for the window that is about to be destroyed. I don't think we need to do anything though, but I should probably take a look.

(Reply to this) (Thread)


[info]tigerdog
2007-12-01 03:12 pm UTC (link)
That couldn't hurt. How would you do this? Close the port then read from the port until the queue is empty? Then make sure to open it next time it's reference?

(Reply to this) (Parent)


Create an Account
Forgot your login or password?
Login w/ OpenID
English • Español • Deutsch • Русский…