Home, 2008-04-22
(Sometimes it seems to help if firefox is simply started from a new shell)
A security update (to 1.5.0.9 or something) broke my firefox. After a couple of restarts it would not start at all. An strace showed something like:
stat64("/home/pink/.mozilla/firefox/init.d/K*", 0xbfc6e030) = -1 ENOENT (No such file or directory)
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
stat64("/opt/firefox-1.5.0.9/init.d/K*", 0xbfc6e030) = -1 ENOENT (No such file or directory)
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
exit_group(1) = ?I tried a number of things to fix it, but without success, so I created a new profile and tried to copy the most important bits from my old profile. The first attempts failed (I tried to copy all the files and then start firefox), but the following worked:
I am not sure exactly why or how it worked, the signons.txt seemed to create most problems. Both key3.db and signons.txt are needed to be able to use the stored passwords.
In January 2007 I installed a new java (jre1.5.0_10) updated the plugins, restarted firefox and got this:
% INTERNAL ERROR on Browser End: Could not get the plugin managerpink@hugin: ~] System error?:: Success
This killed my profile again and this time I could not even create a new profile and copy my bookmarks over without killing the profile...
This is what I did:
cp bookmarks.html bookhistory.dat formhistory.dat key3.db prefs.js signons.txt DESTINATION
If there is still problems try to mkdir an init.d-dir under .firefox and touch a file beginning with K, say Kfoo.
A copy-paste inside my google notebook crashed my firefox and I could not start it with my profile afterwards:
[{WIFEXITED(s) && WEXITSTATUS(s) == 1}], 0) = 15573
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
--- SIGCHLD (Child exited) @ 0 (0) ---
waitpid(-1, 0xbff27468, WNOHANG) = -1 ECHILD (No child processes)
sigreturn() = ? (mask now [])
rt_sigaction(SIGINT, {SIG_DFL}, {0x8075fa0, [], 0}, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
read(255, "exitcode=$?\n\n## Stop addon scrip"..., 5247) = 91
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
open("/home/pink/.mozilla/firefox/init.d/", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC) = 0
brk(0) = 0x811a000
brk(0x811c000) = 0x811c000
getdents64(3, /* 3 entries */, 4096) = 72
getdents64(3, /* 0 entries */, 4096) = 0
close(3) = 0
open("/opt/firefox-1.5.0.9/init.d/", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0775, st_size=4096, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC) = 0
getdents64(3, /* 3 entries */, 4096) = 72
getdents64(3, /* 0 entries */, 4096) = 0
close(3) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
stat64("/home/pink/.mozilla/firefox/init.d/Kfoo", {st_mode=S_IFREG|0664, st_size=0, ...}) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
stat64("/opt/firefox-1.5.0.9/init.d/Kfoo", {st_mode=S_IFREG|0664, st_size=0, ...}) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
exit_group(1) = ?I simply decided to add some size to /home/pink/.mozilla/firefox/init.d/Kfoo and wrote a few random letters into it, and lo and behold it started just fine after that.