clbr / fifth

Fifth is a Linux-exclusive browser that carries the best features from Opera, as well as a few unique features that are likely to please Linux power users. It's based on a custom Webkit port to FLTK and comes licensed under the GPLv3.
GNU General Public License v3.0
106 stars 7 forks source link

fifth crash #2

Closed John1337291 closed 9 years ago

clbr commented 9 years ago

On Mon, 17 Nov 2014 00:58:03 -0800 14igorv14 notifications@github.com wrote:

fifth crashes on page

http://www.youtube.com/watch?v=GsWRzDfXOlQ

Doesn't crash for me, so I'll need a backtrace to be able to help.

clbr commented 9 years ago

To get a backtrace, you need to build Fifth (and maybe webkitfltk) in debug mode, and run it in gdb. There's good instructions online if you haven't used gdb before.

wcout commented 9 years ago

Hi, I also get crashes with YouTube:

(gdb) run Starting program: /home/{....}/fifth/src/fifth http://www.youtube.com/watch?v=GsWRzDfXOlQ [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Detected stale lock file, but no crash report? [New Thread 0x7ffff7fbb700 (LWP 3136)] [New Thread 0x7fffabb4f700 (LWP 3137)] Opening remote URL http://www.youtube.com/watch?v=GsWRzDfXOlQ [New Thread 0x7fffab08e700 (LWP 3138)] [New Thread 0x7fffaa88d700 (LWP 3139)] [New Thread 0x7fffaa08c700 (LWP 3140)] [New Thread 0x7fffa988b700 (LWP 3141)] [New Thread 0x7fffa908a700 (LWP 3142)] [Thread 0x7fffa908a700 (LWP 3142) exited] [New Thread 0x7fffa908a700 (LWP 3143)] [Thread 0x7fffa908a700 (LWP 3143) exited] [New Thread 0x7fffa908a700 (LWP 3144)] [New Thread 0x7fff93fff700 (LWP 3145)] [New Thread 0x7fff937fe700 (LWP 3146)] [Thread 0x7fffa908a700 (LWP 3144) exited] [Thread 0x7fff93fff700 (LWP 3145) exited] [Thread 0x7fff937fe700 (LWP 3146) exited] [New Thread 0x7fff937fe700 (LWP 3147)] [New Thread 0x7fff93fff700 (LWP 3148)] [New Thread 0x7fffa908a700 (LWP 3149)] [Thread 0x7fff937fe700 (LWP 3147) exited] [Thread 0x7fff93fff700 (LWP 3148) exited] [Thread 0x7fffa908a700 (LWP 3149) exited] [New Thread 0x7fffa908a700 (LWP 3150)] [Thread 0x7fffa908a700 (LWP 3150) exited] [New Thread 0x7fffa908a700 (LWP 3151)] [New Thread 0x7fff93fff700 (LWP 3152)] [New Thread 0x7fff937fe700 (LWP 3153)] [Thread 0x7fffa908a700 (LWP 3151) exited] [Thread 0x7fff93fff700 (LWP 3152) exited] [Thread 0x7fff937fe700 (LWP 3153) exited] [New Thread 0x7fff937fe700 (LWP 3154)] [Thread 0x7fff937fe700 (LWP 3154) exited] [New Thread 0x7fff937fe700 (LWP 3155)] [Thread 0x7fff937fe700 (LWP 3155) exited] [New Thread 0x7fff937fe700 (LWP 3156)] [New Thread 0x7fff93fff700 (LWP 3157)] [Thread 0x7fff937fe700 (LWP 3156) exited] [Thread 0x7fff93fff700 (LWP 3157) exited] [New Thread 0x7fff93fff700 (LWP 3158)] [Thread 0x7fff93fff700 (LWP 3158) exited] Curl ERROR for url='https://www.google.com/jsapi?autoload=%7B%22modules%22%3A%5B%7B%22name%22%3A%22ads%22%2C%22version%22%3A%221%22%2C%22callback%22%3A%22(function()%7B%7D)%22%2C%22packages%22%3A%5B%22content%22%5D%7D%5D%7D', error: 'Peer certificate cannot be authenticated with given CA certificates' [New Thread 0x7fff93fff700 (LWP 3159)] [Thread 0x7fff93fff700 (LWP 3159) exited] ERROR: !(isInBounds(value)) platform/LayoutUnit.h(98) : WebCore::LayoutUnit::LayoutUnit(float) ERROR: !(isInBounds(value)) platform/LayoutUnit.h(98) : WebCore::LayoutUnit::LayoutUnit(float) ERROR: !(isInBounds(value)) platform/LayoutUnit.h(98) : WebCore::LayoutUnit::LayoutUnit(float) ERROR: !(isInBounds(value)) platform/LayoutUnit.h(98) : WebCore::LayoutUnit::LayoutUnit(float) ERROR: !(isInBounds(value)) platform/LayoutUnit.h(98) : WebCore::LayoutUnit::LayoutUnit(float) ERROR: !(isInBounds(value)) platform/LayoutUnit.h(98) : WebCore::LayoutUnit::LayoutUnit(float) ERROR: !(isInBounds(value)) platform/LayoutUnit.h(98) : WebCore::LayoutUnit::LayoutUnit(float) ERROR: !(isInBounds(value)) platform/LayoutUnit.h(98) : WebCore::LayoutUnit::LayoutUnit(float)

Program received signal SIGSEGV, Segmentation fault. 0x00007ffff4990512 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2 (gdb) bt

0 0x00007ffff4990512 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

1 0x00007ffff4990e03 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

2 0x00007ffff49f3290 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

3 0x00007ffff49f44d2 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

4 0x00007ffff49f48b3 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

5 0x00007ffff49f4ff2 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

6 0x00007ffff499db27 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

7 0x00007ffff4a0eec8 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

8 0x00007ffff49e2504 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

9 0x00007ffff499c19f in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

10 0x00007ffff49f2f67 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

11 0x00007ffff49f3ba1 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

12 0x00007ffff49f4054 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

13 0x00007ffff49f5057 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

14 0x00007ffff499db27 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

15 0x00007ffff4a0eec8 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

16 0x00007ffff49e2504 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

17 0x00007ffff49a558c in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

18 0x00007ffff499f0d9 in ?? () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

19 0x00007ffff49989f5 in cairo_fill () from /usr/lib/x86_64-linux-gnu/libcairo.so.2

20 0x0000000000b0f1a7 in WebCore::fillRectWithColor(cairo, WebCore::FloatRect const&, WebCore::Color const&) ()

21 0x0000000000b0fad9 in WebCore::GraphicsContext::drawRect(WebCore::FloatRect const&, float) ()

22 0x000000000141b93e in WebCore::RenderBoxModelObject::drawBoxSideFromPath(WebCore::GraphicsContext, WebCore::LayoutRect const&, WebCore::Path const&, WebCore::BorderEdge const, float, float, WebCore::BoxSide, WebCore::RenderStyle const&, WebCore::Color, WebCore::EBorderStyle, WebCore::BackgroundBleedAvoidance, bool, bool) ()

23 0x0000000001418d00 in WebCore::RenderBoxModelObject::paintOneBorderSide(WebCore::GraphicsContext, WebCore::RenderStyle const&, WebCore::RoundedRect const&, WebCore::RoundedRect const&, WebCore::LayoutRect const&, WebCore::BoxSide, WebCore::BoxSide, WebCore::BoxSide, WebCore::BorderEdge const, WebCore::Path const, WebCore::BackgroundBleedAvoidance, bool, bool, bool, WebCore::Color const) ()

24 0x0000000001419476 in WebCore::RenderBoxModelObject::paintBorderSides(WebCore::GraphicsContext, WebCore::RenderStyle const&, WebCore::RoundedRect const&, WebCore::RoundedRect const&, WebCore::IntPoint const&, WebCore::BorderEdge const, unsigned int, WebCore::BackgroundBleedAvoidance, bool, bool, bool, WebCore::Color const_) ()

25 0x000000000141aead in WebCore::RenderBoxModelObject::paintBorder(WebCore::PaintInfo const&, WebCore::LayoutRect const&, WebCore::RenderStyle const&, WebCore::BackgroundBleedAvoidance, bool, bool) ()

26 0x000000000142961a in WebCore::RenderBox::paintBoxDecorations(WebCore::PaintInfo&, WebCore::LayoutPoint const&)

()

27 0x00000000014711df in WebCore::RenderBlock::paintObject(WebCore::PaintInfo&, WebCore::LayoutPoint const&) ()

28 0x0000000001470575 in WebCore::RenderBlock::paint(WebCore::PaintInfo&, WebCore::LayoutPoint const&) ()

29 0x00000000013b0026 in WebCore::RenderLayer::paintBackgroundForFragments(WTF::Vector<WebCore::LayerFragment, 1ul, WTF::CrashOnOverflow> const&, WebCore::GraphicsContext, WebCore::GraphicsContext, WebCore::LayoutRect const&, bool,---Type to continue, or q to quit---

WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int, WebCore::RenderObject_) ()

30 0x00000000013ae701 in WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

31 0x00000000013ada08 in WebCore::RenderLayer::paintLayerContentsAndReflection(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

32 0x00000000013aedfb in WebCore::RenderLayer::paintLayerByApplyingTransform(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int, WebCore::LayoutPoint const&) ()

33 0x00000000013ad864 in WebCore::RenderLayer::paintLayer(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

34 0x00000000013aeeba in WebCore::RenderLayer::paintList(WTF::Vector<WebCore::RenderLayer, 0ul, WTF::CrashOnOverflow>, WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

35 0x00000000013ae8aa in WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

36 0x00000000013ada08 in WebCore::RenderLayer::paintLayerContentsAndReflection(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

37 0x00000000013aedfb in WebCore::RenderLayer::paintLayerByApplyingTransform(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int, WebCore::LayoutPoint const&) ()

38 0x00000000013ad864 in WebCore::RenderLayer::paintLayer(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

39 0x00000000013aeeba in WebCore::RenderLayer::paintList(WTF::Vector<WebCore::RenderLayer*, 0ul, WTF::CrashOnOverflow>, WebCore::GraphicsContext, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

40 0x00000000013ae8aa in WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

41 0x00000000013ada08 in WebCore::RenderLayer::paintLayerContentsAndReflection(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

42 0x00000000013ad8de in WebCore::RenderLayer::paintLayer(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

43 0x00000000013aeeba in WebCore::RenderLayer::paintList(WTF::Vector<WebCore::RenderLayer, 0ul, WTF::CrashOnOverflow>, WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

44 0x00000000013ae8aa in WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

45 0x00000000013ada08 in WebCore::RenderLayer::paintLayerContentsAndReflection(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

46 0x00000000013ad8de in WebCore::RenderLayer::paintLayer(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

47 0x00000000013aeeba in WebCore::RenderLayer::paintList(WTF::Vector<WebCore::RenderLayer, 0ul, WTF::CrashOnOverflow>, WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

48 0x00000000013ae8aa in WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

49 0x00000000013ada08 in WebCore::RenderLayer::paintLayerContentsAndReflection(WebCore::GraphicsContext_, WebCore::R---Type to continue, or q to quit---

enderLayer::LayerPaintingInfo const&, unsigned int) ()

50 0x00000000013ad8de in WebCore::RenderLayer::paintLayer(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

51 0x00000000013aeeba in WebCore::RenderLayer::paintList(WTF::Vector<WebCore::RenderLayer, 0ul, WTF::CrashOnOverflow>, WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

52 0x00000000013ae8aa in WebCore::RenderLayer::paintLayerContents(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

53 0x00000000013ada08 in WebCore::RenderLayer::paintLayerContentsAndReflection(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

54 0x00000000013ad8de in WebCore::RenderLayer::paintLayer(WebCore::GraphicsContext_, WebCore::RenderLayer::LayerPaintingInfo const&, unsigned int) ()

55 0x00000000013aca13 in WebCore::RenderLayer::paint(WebCore::GraphicsContext, WebCore::LayoutRect const&, unsigned int, WebCore::RenderObject, unsigned int) ()

56 0x000000000050e15f in WebCore::FrameView::paintContents(WebCore::GraphicsContext_, WebCore::IntRect const&) ()

57 0x00000000004c5702 in WebCore::ScrollView::paint(WebCore::GraphicsContext*, WebCore::IntRect const&) ()

58 0x0000000000437285 in webview::drawWeb (this=0x4152c90) at webview.cpp:210

59 0x00000000004370a7 in webview::draw (this=0x4152c90) at webview.cpp:186

60 0x0000000001b6197a in Fl_Group::update_child(Fl_Widget&) const ()

61 0x0000000001b6acbf in Fl_Pack::draw() ()

62 0x0000000001b6197a in Fl_Group::update_child(Fl_Widget&) const ()

63 0x0000000001b61bed in Fl_Group::draw_children() ()

64 0x0000000001b5c639 in Fl_Double_Window::flush(int) ()

65 0x0000000001b56d5c in Fl::flush() ()

66 0x0000000001b57a6b in Fl::wait(double) ()

67 0x00000000004154a0 in main (argc=, argv=) at main.cpp:793

(gdb)

clbr commented 9 years ago

wcout,

your crash is deep in cairo, which would point to it being a bug in cairo. Please install cairo's debug package, re-do the backtrace, and report to cairo.

wcout commented 9 years ago

My cairo version is 1.13.0 from the Ubuntu 14.04 packages. Do you have a different version ?

clbr commented 9 years ago

My cairo version is 1.13.0 from the Ubuntu 14.04 packages. Do you have a different version ?

Yes, I'm using the latest 1.12 stable, 1.12.18. Ubuntu's 1.13 appears to be actually older than that.

But obviously you'd need to try the most recent cairo before reporting a cairo bug, that'd be 1.14.0 or cairo git.

wcout commented 9 years ago

I fetched cairo git and built fifth to use it ==> this error is gone!

Got another one instead when moving around in YouTube (but far more less frequently) - some assertion in WebCore:

ASSERTION FAILED: !s.escaped() platform/text/SegmentedString.cpp(169) : void WebCore::SegmentedString::append(const WebCore::SegmentedString&)

clbr commented 9 years ago

On Sat, 22 Nov 2014 09:06:11 -0800 wcout notifications@github.com wrote:

I fetched cairo git and built fifth to use it ==> this error is gone!

Got another one instead when moving around in YouTube (but far more less frequently) - some assertion in WebCore:

ASSERTION FAILED: !s.escaped() platform/text/SegmentedString.cpp(169) : void WebCore::SegmentedString::append(const WebCore::SegmentedString&)

As mentioned in the README, using a build with asserts is not recommended for normal use. It's mainly useful for webkit development.

wcout commented 9 years ago

Ah! Well, this section in the README was added after I first pulled the Repo ;) Anyway I don't really understand it. Does it mean I should modify the Makefiles or set some environment variable before compiling?

clbr commented 9 years ago

Before compiling, run

export CXXFLAGS="-DNDEBUG"

clbr commented 9 years ago

No response from OP in over two weeks, closing.