Flash player crashing only under plugin-container

John Francis <[email protected]>
Newsgroups gmane.comp.mozilla.devel.plugins
Organization http://groups.google.com
Message-ID <[email protected]>
I've installed Firefox 4 under CentOS 5.6 using the trick of copying a
newer libstdc++.so.6 into the firefox directory. It works fine except
that the Flash Player plugin usually crashes immediately on load up.
Some very basic flash components will sometimes work but I would say
the vast majority crash immediately on load up.

The plugin works fine in "legacy mode", that is with
dom.ipc.plugins.enabled.libflashplayer.so set to false.

I know this will probably be considered a third-party build, but there
may be something interesting in figuring out this apparent bug. I've
done what I can using strace. I've used the -f and -ff options to
follow forked processes and write the strace to separate files by pid.
I'm using a plugin-container wrapper script that uses LD_PRELOAD to
force it to use the newer libstdc++.so.6 plus whatever else is
available in the firefox distribution directory.

Here is a snippet from the strace of the process that launches the
plugin (I think):

pipe([7, 8])                            = 0
...
access("/usr/lib/flash-plugin/libflashplayer.so", F_OK) = 0
access("/usr/lib/flash-plugin/libflashplayer.so", F_OK) = 0
open("/usr/lib/flash-plugin/libflashplayer.so", O_RDONLY) = 15
read(15, "\177ELF
\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\0\227\4\0004\0\0\0"..., 512)
= 512
fstat64(15, {st_mode=S_IFREG|0755, st_size=12537796, ...}) = 0
...
gettimeofday({1306367074, 158128}, NULL) = 0
write(13, "\0", 1)                      = 1
write(8, "!", 1)                              = 1
ioctl(14, FIONREAD, [0]) = 0
poll([{fd=5, events=POLLIN}, {fd=14, events=POLLIN}, {fd=7,
events=POLLIN}], 3, 0)                               = 1 ([{fd=7,
revents=POLLIN}])
read(7, "!", 1)                   = 1
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
prctl(0x4, 0x1, 0xb7d021e0, 0xac, 0) = 0
gettid()                           = 7624
socketpair(PF_FILE, SOCK_STREAM, 0, [17, 19]) = 0
sendmsg(4, {msg_name(0)=NULL, msg_iov(1)=[{"\v\0\0\0\0\0\0\0\1\0\0\0
\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 592}], msg_controllen=16,
{cmsg_len=16, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, {19}},
msg_flags=0}, 0)                           = 592
close(19) = 0
read(17, "", 1)                          = 0
rt_sigaction(SIGSEGV, {SIG_DFL, [SEGV], SA_RESTART}, {0x1139d48, [ILL
ABRT BUS FPE SEGV], SA_STACK|SA_SIGINFO}, 8) = 0
gettid()                                = 7624
tgkill(7624, 7624, SIGSEGV)             = 0
exit_group(1)                           = ?

I still have the full traces if anyone is interested.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.