Bug#580173: xulrunner-1.9.2: libmozjs3d dependency not tight enough

Mike Hommey mh at glandium.org
Tue May 4 07:50:15 UTC 2010


On Tue, May 04, 2010 at 08:12:54AM +0200, Mike Hommey wrote:
> On Mon, May 03, 2010 at 10:34:23PM -0400, Will Dyson wrote:
> > Package: xulrunner-1.9.2
> > Version: 1.9.2.4~build2-1
> > Severity: normal
> > Tags: experimental
> > 
> > xulrunner-1.9.2.4~build2-1 declares a dependency against libmozjs3d >=
> > 1.9.2.2. However, it crashes with 1.9.2.3-2 installed. 1.9.2.4~build2-1
> > is required not to crash.
> > 
> > Perhaps this is not a big deal, since only upgraders from previous
> > experimental versions will be affected. But in general, I believe
> > xulrunner should require an exact version match with libmozjs.
> 
> There is a double problem here. I agree xulrunner should depend on the
> exact version of libmozjs at least, but an older libmozjs shouldn't
> break a newer xulrunner with no ABI change, because that means there
> could also be trouble for others packages using libmozjs, so the root
> cause still needs to be known accurately.

The cause is js_LeaveTrace and js_CanLeaveTrace, which are static
functions defined in jscntxt.h, and that read data from a struct
which structure (slightly) changed in 1.9.2.4. Since they are static
functions defined in a header, they end up in the binary linking against
libmozjs instead of libmozjs, therefore the compatibility problem.

Fortunately, no other software in debian use these functions (the same
change is going to affect 1.9.1.10 when it is released), so we are
somehow safe.

This unfortunately also means that a newer libmozjs3d will break an
older xulrunner-1.9.2.

Mike





More information about the pkg-mozilla-maintainers mailing list