Closed Bug 398885 Opened 17 years ago Closed 17 years ago

Crash at startup on systems with Pango 1.18 [@ GlyphBuffer::Flush] [@ _cairo_cache_freeze]

Categories

(Core :: Graphics, defect)

x86
Linux
defect
Not set
blocker

Tracking

()

RESOLVED FIXED

People

(Reporter: asrail, Assigned: asrail)

References

Details

(Keywords: crash, regression)

Crash Data

Attachments

(4 files, 1 obsolete file)

Attached file Stack trace
It always crashes at startup while using pango 1.18.

It's a regression of bug 362682.
Attached file Another stack
This one is happening more frequently right now.
Severity: major → critical
Attached file valgrind log
I also have a 90MB core.`pidof firefox-bin` file. It compresses to 3.0MB. Should I attach that as well?
Severity: critical → blocker
Flags: blocking1.9?
About pango versions and blocking 1.9... in a near future Ubuntu Gutsy and Debian Lenny will be released with pango 1.18, so the amount of people suffering from this will increase a lot. Current users of such non-released versions already use pango 1.18.

Revert to using pango 1.16 or older requires downgrade of essential packages, so a change of version is not an *easy* workaround.

Since this is a regression introduced by a 1.9 blocker, it should got some high priority.


@hussam: I don't think it's needed.
Summary: Crash at startup [@ GlyphBuffer::Flush] [@ _cairo_cache_freeze] → Crash at startup on systems with Pango 1.18 [@ GlyphBuffer::Flush] [@ _cairo_cache_freeze]
Attached patch Proposed patch (obsolete) — Splinter Review
Maybe that should be ifdef'd to zero, as Stuart suggested...
Assignee: nobody → asrail
Status: NEW → ASSIGNED
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Would have been nice to #if 0 it instead of removing.
ok, I'm pretty sure the crash is caused by a broken internal cairo version.  I just ran the version that was crashing for people using system cairo and it works.  Lets fix properly by updating cairo or something.  I can't reopen.  Please do.
Comment on attachment 283940 [details] [diff] [review]
Proposed patch

Stuart submitted a patch ifdefing 0 yesterday.
Attachment #283940 - Attachment is obsolete: true
(In reply to comment #8)
> ok, I'm pretty sure the crash is caused by a broken internal cairo version.  I
> just ran the version that was crashing for people using system cairo and it
> works.  Lets fix properly by updating cairo or something.  I can't reopen. 
> Please do.

It is already known it works with system cairo.

There is not any logic error on the cairo's code inside Mozilla source... I've seen that some snippet of code should work, but sometimes the scaled font got overridden somehow.

There is a mention to the fact that it works with system cairo, but... Mozilla won't compile using system cairo with any released version of cairo.

Since it's a stopper, it's better to ifdef 0 for now.



Just to make it clear, the crash is inside cairo due to cairo memory management issues. It's better not to use that function for now than to enforce people using some specific (probably not yet released) version of cairo.

(In reply to comment #10)
> (In reply to comment #8)
> > ok, I'm pretty sure the crash is caused by a broken internal cairo version.  I
> > just ran the version that was crashing for people using system cairo and it
> > works.  Lets fix properly by updating cairo or something.  I can't reopen. 
> > Please do.
> 
> It is already known it works with system cairo.
> 
> There is not any logic error on the cairo's code inside Mozilla source... I've
> seen that some snippet of code should work, but sometimes the scaled font got
> overridden somehow.
> 
> There is a mention to the fact that it works with system cairo, but... Mozilla
> won't compile using system cairo with any released version of cairo.
> 
> Since it's a stopper, it's better to ifdef 0 for now.
> 
> 
> 
> Just to make it clear, the crash is inside cairo due to cairo memory management
> issues. It's better not to use that function for now than to enforce people
> using some specific (probably not yet released) version of cairo.

The actual issue is using scaled font from system cairo with included cairo.  The correct fix is to make the conditional also check if system cairo is being used.
Crash Signature: [@ GlyphBuffer::Flush] [@ _cairo_cache_freeze]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: