pcxFirefox 24.0 is released

pcxFirefox 24.0 is released, including firefox x86 and x64, thunderbird x86.

pcxfirefox 24.0
1 Features:
1) Newer processor that supports SSE2 ( x64 edition optimize for x64 CPU )
2) Introduce tete009′s multithread and portable feature depending on his tmemutil module
3) Implement config.trim_on_minimize on Vista+ OS again, but set it to false by default
4) Embedded WMP plugin.  (x64 has no embedded plugin)
5) Provide a tmemutil alternative module tmemutil-3rd.dll, whose initial source code comes from http://code.google.com/p/libportable/
2 Build Method Improvement
1) BetterPGO
2) Apply PGO to nss3.dll
3 About tmemutil.dll
You can see tmemutil-sample.ini for settings example.
4 About tmemutil-3rd.dll
If you want to use the alternative tmemutil-3rd.dll, please delete tmemutil.dll first and rename tmemutil-3rd.dll to tmemutil.dll, and all of their setting files are tmemutil.ini
tmemutil-3rd.dll’s new feature compared to tete009′s tmemutil.dll is
1) Security Enhancements ( SafeEx=1 )
2) Process White List ( Prevent some API hook and Browser overflow attacks, EnableWhiteList=1 )
3) Provide another two Environment Variables ( TmpDataPath and NpluginPath )
4) Provide Bosskey function ( Bosskey=1 )
If you want to use the tmemutil-3rd.dll, you can refer to tmemutil-3rd-sample.ini, modify it and rename it to tmemutil.ini
5 About additional plugins
If you want to use other plugins, please see
6 Download link
contains en-US, zh-CN, zh-TW, ja
Mirror: http://pan.baidu.com/share/link?shareid=2253681088&uk=2365780601#dir/path=%2F%E6%88%91%E7%9A%84%E8%BD%AF%E4%BB%B6%2FpcxFirefox%E5%A4%87%E4%BB%BD

For thunderbird, I use bug653342 patch and try to apply PGO to mail components.

pcxFirefox 23.0.1 is out

Download link
en-US: http://sourceforge.net/projects/pcxfirefox/files/Release/Firefox/23.x/pcxFirefox-23.0.1-enUS-vc2010-x86-sse2-betterpgo-130817.7z/download
zh-CN: http://sourceforge.net/projects/pcxfirefox/files/Release/Firefox/23.x/pcxFirefox-23.0.1-zhCN-vc2010-x86-sse2-betterpgo-130817.7z/download
zh-TW: http://sourceforge.net/projects/pcxfirefox/files/Release/Firefox/23.x/pcxFirefox-23.0.1-zhTW-vc2010-x86-sse2-betterpgo-130817.7z/download

pcxFirefox 23 is out

pcxFirefox 23 is out.

Download link:


en-US: http://sourceforge.net/projects/pcxfirefox/files/Release/Firefox/23.x/pcxFirefox-23.0-enUS-vc2010-x86-sse2-betterpgo-130811.7z/download

zh-CN: http://sourceforge.net/projects/pcxfirefox/files/Release/Firefox/23.x/pcxFirefox-23.0-zhCN-vc2010-x86-sse2-betterpgo-130811.7z/download

zh-TW: http://sourceforge.net/projects/pcxfirefox/files/Release/Firefox/23.x/pcxFirefox-23.0-zhTW-vc2010-x86-sse2-betterpgo-130811.7z/download

Some IME input method issues

Someone told me that on some x86 OS ( XP or Win7 x86 ), some IME input method will prevent firefox ( official edition or 3rd build edition ) exit normally, such as sogou or QQ pinyi input method.

I reproduce the issue on my VMware XP OS.

I save the dump information, which will stop in:

I try to change WaitForSingleObject to MsgWaitForMultipleObjects, but also has the problem. After I see the dump stack, it seems that the shutdown stack record sub thread crashed, and I read the source code, found that all channel will use the shutdown stack record.

  const char* releaseChannel = NS_STRINGIFY(MOZ_UPDATE_CHANNEL);
//  if (strcmp(releaseChannel, "nightly") == 0 ||
//      strcmp(releaseChannel, "default") == 0) {
    if (strcmp(releaseChannel, "nightly") == 0 ) {
    gShutdownChecks = SCM_RECORD;
  } else {
    gShutdownChecks = SCM_NOTHING;


So I try to get rid of “default” channel section, only keep nightly, the final firefox and the above IME input method works well.

update: For other editions such as official or other 3rd build, set MOZ_SHUTDOWN_CHECKS = nothing, also can fix the issue.