Dillo-dev
By thread
dillo-dev@mailman3.com
By month
Messages by month
- ----- 2026 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2003 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2002 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2001 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2000 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 1999 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 1998 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 1997 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 1996 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 1995 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- 3 participants
- 11667 messages
Dillo CPU-hog lock on slashdot
by james.from.wellingtonï¼ gmail.com
Hello Jorge et al,
Partly reproduced on OSX, on a branch that includes the repository up
to 26 October, and eocene's SSL patch. The CPU and memory use is
reasonable, but the stop icon does not turn grey. Fields on the right
show "8 of 9" in black and "264.5 KB" in grey.
Reproduced on OSX with the tip (changeset 553bbaa) of the default
branch. Uses 100% of cpu and does not respond to Cmd-Q quit request.
Fields on the right show "5 of 10" in black and "181.4 KB" in grey.
Because the window won't scroll, it's hard to tell how much has
rendered.
Ignorant GDB exploring below. It seems to be struggling with
word-wrap, tables, etc.
Bin-packing is in NP-hard. I wonder what the right algorithm is for
good table rendering.
Regards,
James.
===============
Program received signal SIGINT, Interrupt.
0x00000001000a09f9 in lout::container::untyped::HashSet::calcHashValue
(this=0x116b1bd90, object=0x7fff5fbfdb80) at container.hh:242
242 return abs(object->hashValue()) % tableSize;
(gdb) bt
#0 0x00000001000a09f9 in
lout::container::untyped::HashSet::calcHashValue (this=0x116b1bd90,
object=0x7fff5fbfdb80) at container.hh:242
#1 0x000000010009eeb9 in lout::container::untyped::HashSet::findNode
(this=0x116b1bd90, object=0x7fff5fbfdb80) at container.cc:497
#2 0x000000010009f2e3 in lout::container::untyped::HashTable::get
(this=0x116b1bd90, key=0x7fff5fbfdb80) at container.cc:704
#3 0x000000010005d83c in
lout::container::typed::HashTable<lout::object::TypedPointer<dw::Textblock>,
dw::OutOfFlowMgr::TBInfo>::get (this=0x116b1bd80, key=0x7fff5fbfdb80)
at container.hh:524
#4 0x00000001000587fd in dw::OutOfFlowMgr::getTextblock
(this=0x116b1bb60, textblock=0x116bf7270) at outofflowmgr.cc:1954
#5 0x0000000100059ad5 in
dw::OutOfFlowMgr::Float::CompareGBAndExtIndex::compare
(this=0x7fff5fbfdd80, o1=0x7fff5fbfdd10, o2=0x116bf64c0) at
outofflowmgr.cc:291
#6 0x000000010009eaf6 in lout::container::untyped::Vector::bsearch
(this=0x116b1bc00, key=0x7fff5fbfdd10, mustExist=false, start=0,
end=38, comparator=0x7fff5fbfdd80) at container.cc:239
#7 0x000000010005de36 in lout::container::untyped::Vector::bsearch
(this=0x116b1bc00, key=0x7fff5fbfdd10, mustExist=false,
comparator=0x7fff5fbfdd80) at container.hh:159
#8 0x000000010005de6b in
lout::container::typed::Vector<dw::OutOfFlowMgr::Float>::bsearch
(this=0x116b1bbd0, key=0x7fff5fbfdd10, mustExist=false,
comparator=0x7fff5fbfdd80) at container.hh:456
#9 0x000000010005b27f in
dw::OutOfFlowMgr::SortedFloatsVector::findFloatIndex
(this=0x116b1bbd0, lastGB=0x116bf7270, lastExtIndex=-1) at
outofflowmgr.cc:340
#10 0x000000010005b986 in
dw::OutOfFlowMgr::SortedFloatsVector::findFirst (this=0x116b1bbd0,
textblock=0x116bf7270, y=330882, h=1, lastGB=0x116bf7270,
lastExtIndex=-1, lastReturn=0x0) at outofflowmgr.cc:424
#11 0x000000010005bd1a in dw::OutOfFlowMgr::hasFloat
(this=0x116b1bb60, textblock=0x116bf7270, side=dw::OutOfFlowMgr::LEFT,
y=330882, h=1, lastGB=0x116bf7270, lastExtIndex=-1) at
outofflowmgr.cc:2115
#12 0x000000010005bdd0 in dw::OutOfFlowMgr::hasFloatLeft
(this=0x116b1bb60, textblock=0x116bf7270, y=330882, h=1,
lastGB=0x116bf7270, lastExtIndex=-1) at outofflowmgr.cc:2092
#13 0x000000010006fdb2 in dw::Textblock::calcBorders
(this=0x116bf7270, lastOofRef=-1, height=1) at
textblock_linebreaking.cc:2045
#14 0x0000000100071f2b in dw::Textblock::balanceBreakPosAndHeight
(this=0x116bf7270, wordIndex=0, firstIndex=0,
searchUntil=0x7fff5fbfe078, tempNewLine=false, penaltyIndex=0,
borderIsCalculated=true, thereWillBeMoreSpace=0x7fff5fbfe08d,
wrapAll=false, diffWords=0x7fff5fbfe084, wordIndexEnd=0x7fff5fbfe070,
lastFloatPos=0x7fff5fbfe064, regardBorder=true, height=0x7fff5fbfe06c,
breakPos=0x7fff5fbfe068) at textblock_linebreaking.cc:910
#15 0x00000001000729d2 in dw::Textblock::wrapWordInFlow
(this=0x116bf7270, wordIndex=0, wrapAll=false) at
textblock_linebreaking.cc:746
#16 0x0000000100072e23 in dw::Textblock::wordWrap (this=0x116bf7270,
wordIndex=0, wrapAll=false) at textblock_linebreaking.cc:606
#17 0x00000001000701b7 in dw::Textblock::rewrap (this=0x116bf7270) at
textblock_linebreaking.cc:1891
#18 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116bf7270, requisition=0x116bf7600) at textblock.cc:341
#19 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116bf7270, requisition=0x116bf7600) at widget.cc:494
#20 0x0000000100070199 in dw::Textblock::rewrap (this=0x116bf6ce0) at
textblock_linebreaking.cc:1889
#21 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116bf6ce0, requisition=0x116bf8ac0) at textblock.cc:341
#22 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116bf6ce0, requisition=0x116bf8ac0) at widget.cc:494
#23 0x0000000100070199 in dw::Textblock::rewrap (this=0x116bf67c0) at
textblock_linebreaking.cc:1889
#24 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116bf67c0, requisition=0x11713ac20) at textblock.cc:341
#25 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116bf67c0, requisition=0x11713ac20) at widget.cc:494
#26 0x0000000100070199 in dw::Textblock::rewrap (this=0x116bf57d0) at
textblock_linebreaking.cc:1889
#27 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116bf57d0, requisition=0x117119680) at textblock.cc:341
#28 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116bf57d0, requisition=0x117119680) at widget.cc:494
#29 0x0000000100070199 in dw::Textblock::rewrap (this=0x116bf5590) at
textblock_linebreaking.cc:1889
#30 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116bf5590, requisition=0x116bf5d80) at textblock.cc:341
#31 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116bf5590, requisition=0x116bf5d80) at widget.cc:494
#32 0x0000000100070199 in dw::Textblock::rewrap (this=0x116bf3c80) at
textblock_linebreaking.cc:1889
#33 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116bf3c80, requisition=0x100941240) at textblock.cc:341
#34 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116bf3c80, requisition=0x100941240) at widget.cc:494
#35 0x0000000100070199 in dw::Textblock::rewrap (this=0x102277cd0) at
textblock_linebreaking.cc:1889
#36 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x102277cd0, requisition=0x1009435c0) at textblock.cc:341
#37 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x102277cd0, requisition=0x1009435c0) at widget.cc:494
#38 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1d7f0) at
textblock_linebreaking.cc:1889
#39 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1d7f0, requisition=0x116b1daa0) at textblock.cc:341
#40 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1d7f0, requisition=0x116b1daa0) at widget.cc:494
#41 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1d060) at
textblock_linebreaking.cc:1889
#42 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1d060, requisition=0x116b1d3c0) at textblock.cc:341
#43 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1d060, requisition=0x116b1d3c0) at widget.cc:494
#44 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1ca30) at
textblock_linebreaking.cc:1889
#45 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1ca30, requisition=0x116b1cd80) at textblock.cc:341
#46 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1ca30, requisition=0x116b1cd80) at widget.cc:494
#47 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1c570) at
textblock_linebreaking.cc:1889
#48 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1c570, requisition=0x117125040) at textblock.cc:341
#49 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1c570, requisition=0x117125040) at widget.cc:494
#50 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1b9b0) at
textblock_linebreaking.cc:1889
#51 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1b9b0, requisition=0x116b1c180) at textblock.cc:341
#52 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1b9b0, requisition=0x116b1c180) at widget.cc:494
#53 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1b4f0) at
textblock_linebreaking.cc:1889
#54 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1b4f0, requisition=0x116b1b6f4) at textblock.cc:341
#55 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1b4f0, requisition=0x116b1b6f4) at widget.cc:494
#56 0x0000000100058685 in dw::OutOfFlowMgr::ensureFloatSize
(this=0x1022478e0, vloat=0x116b1b6a0) at outofflowmgr.cc:2272
#57 0x000000010005b067 in dw::OutOfFlowMgr::tellFloatPosition
(this=0x1022478e0, widget=0x116b1b4f0, yReq=0) at outofflowmgr.cc:1534
#58 0x000000010005b1dc in dw::OutOfFlowMgr::tellPosition
(this=0x1022478e0, widget=0x116b1b4f0, yReq=0) at outofflowmgr.cc:1516
#59 0x0000000100072aef in dw::Textblock::wrapWordInFlow
(this=0x116b1ad70, wordIndex=1, wrapAll=true) at
textblock_linebreaking.cc:788
#60 0x0000000100072e23 in dw::Textblock::wordWrap (this=0x116b1ad70,
wordIndex=1, wrapAll=true) at textblock_linebreaking.cc:606
#61 0x000000010006fbb2 in dw::Textblock::showMissingLines
(this=0x116b1ad70) at textblock_linebreaking.cc:2113
#62 0x000000010006b230 in dw::Textblock::sizeRequestImpl
(this=0x116b1ad70, requisition=0x10095b450) at textblock.cc:342
#63 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1ad70, requisition=0x10095b450) at widget.cc:494
#64 0x0000000100070199 in dw::Textblock::rewrap (this=0x10210cdf0) at
textblock_linebreaking.cc:1889
#65 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x10210cdf0, requisition=0x1009597c0) at textblock.cc:341
#66 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x10210cdf0, requisition=0x1009597c0) at widget.cc:494
#67 0x0000000100070199 in dw::Textblock::rewrap (this=0x10054a2c0) at
textblock_linebreaking.cc:1889
#68 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x10054a2c0, requisition=0x7fff5fbff040) at textblock.cc:341
#69 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x10054a2c0, requisition=0x7fff5fbff040) at widget.cc:494
#70 0x00000001000586cc in dw::OutOfFlowMgr::doFloatsExceedCB
(this=0x1022478e0, side=dw::OutOfFlowMgr::LEFT) at
outofflowmgr.cc:1045
#71 0x000000010005b757 in dw::OutOfFlowMgr::sizeAllocateEnd
(this=0x1022478e0, caller=0x10054a2c0) at outofflowmgr.cc:651
#72 0x000000010006ae82 in dw::Textblock::sizeAllocateImpl
(this=0x10054a2c0, allocation=0x7fff5fbff240) at textblock.cc:757
#73 0x000000010009cfb2 in dw::core::Widget::sizeAllocate
(this=0x10054a2c0, allocation=0x7fff5fbff240) at widget.cc:993
#74 0x000000010008e4ff in dw::core::Layout::resizeIdle
(this=0x105109370) at layout.cc:912
#75 0x0000000100076d9e in dw::fltk::FltkPlatform::generalIdle
(this=0x1051091c0) at fltkplatform.cc:627
#76 0x0000000100076def in dw::fltk::FltkPlatform::generalStaticIdle
(data=0x1051091c0) at fltkplatform.cc:617
#77 0x00000001000ad21e in fl_mac_flush_and_wait (time_to_wait=1e+20)
at Fl_cocoa.mm:806
#78 0x00000001000b0025 in Fl::run () at Fl.cxx:589
#79 0x00000001000044c5 in main (argc=1, argv=0x7fff5fbff3f8) at dillo.cc:588
(gdb) finish
Run till exit from #0 0x00000001000a09f9 in
lout::container::untyped::HashSet::calcHashValue (this=0x116b1bd90,
object=0x7fff5fbfdb80) at container.hh:242
0x000000010009eeb9 in lout::container::untyped::HashSet::findNode
(this=0x116b1bd90, object=0x7fff5fbfdb80) at container.cc:497
497 int h = calcHashValue(object);
Value returned is $1 = 176
(gdb)
Run till exit from #0 0x000000010009eeb9 in
lout::container::untyped::HashSet::findNode (this=0x116b1bd90,
object=0x7fff5fbfdb80) at container.cc:497
0x000000010009f2e3 in lout::container::untyped::HashTable::get
(this=0x116b1bd90, key=0x7fff5fbfdb80) at container.cc:704
704 Node *node = findNode(key);
Value returned is $2 = ('lout::container::untyped::HashSet::Node' *) 0x116bf7500
(gdb)
Run till exit from #0 0x000000010009f2e3 in
lout::container::untyped::HashTable::get (this=0x116b1bd90,
key=0x7fff5fbfdb80) at container.cc:704
0x000000010005d83c in
lout::container::typed::HashTable<lout::object::TypedPointer<dw::Textblock>,
dw::OutOfFlowMgr::TBInfo>::get (this=0x116b1bd80, key=0x7fff5fbfdb80)
at container.hh:524
524 { return (V*)((untyped::HashTable*)this->base)->get(key); }
Value returned is $3 = ('lout::object::Object' *) 0x116bf73f0
(gdb)
Run till exit from #0 0x000000010005d83c in
lout::container::typed::HashTable<lout::object::TypedPointer<dw::Textblock>,
dw::OutOfFlowMgr::TBInfo>::get (this=0x116b1bd80, key=0x7fff5fbfdb80)
at container.hh:524
0x00000001000587fd in dw::OutOfFlowMgr::getTextblock
(this=0x116b1bb60, textblock=0x116bf7270) at outofflowmgr.cc:1954
1954 TBInfo *tbInfo = tbInfosByTextblock->get (&key);
Value returned is $4 = ('dw::OutOfFlowMgr::TBInfo' *) 0x116bf73f0
(gdb)
Run till exit from #0 0x00000001000587fd in
dw::OutOfFlowMgr::getTextblock (this=0x116b1bb60,
textblock=0x116bf7270) at outofflowmgr.cc:1954
0x0000000100059ad5 in
dw::OutOfFlowMgr::Float::CompareGBAndExtIndex::compare
(this=0x7fff5fbfdd80, o1=0x7fff5fbfdd10, o2=0x116bf64c0) at
outofflowmgr.cc:291
291 TBInfo *t1 = oofm->getTextblock (f1->generatingBlock),
Value returned is $5 = ('dw::OutOfFlowMgr::TBInfo' *) 0x116bf73f0
(gdb)
Run till exit from #0 0x0000000100059ad5 in
dw::OutOfFlowMgr::Float::CompareGBAndExtIndex::compare
(this=0x7fff5fbfdd80, o1=0x7fff5fbfdd10, o2=0x116bf64c0) at
outofflowmgr.cc:291
0x000000010009eaf6 in lout::container::untyped::Vector::bsearch
(this=0x116b1bc00, key=0x7fff5fbfdd10, mustExist=false, start=0,
end=38, comparator=0x7fff5fbfdd80) at container.cc:239
239 int c = comparator->compare (key, array[index]);
Value returned is $6 = -4
(gdb)
Run till exit from #0 0x000000010009eaf6 in
lout::container::untyped::Vector::bsearch (this=0x116b1bc00,
key=0x7fff5fbfdd10, mustExist=false, start=0, end=38,
comparator=0x7fff5fbfdd80) at container.cc:239
0x000000010005de36 in lout::container::untyped::Vector::bsearch
(this=0x116b1bc00, key=0x7fff5fbfdd10, mustExist=false,
comparator=0x7fff5fbfdd80) at container.hh:159
159 { return bsearch (key, mustExist, 0, size () - 1, comparator); }
Value returned is $7 = 32
(gdb)
Run till exit from #0 0x000000010005de36 in
lout::container::untyped::Vector::bsearch (this=0x116b1bc00,
key=0x7fff5fbfdd10, mustExist=false, comparator=0x7fff5fbfdd80) at
container.hh:159
0x000000010005de6b in
lout::container::typed::Vector<dw::OutOfFlowMgr::Float>::bsearch
(this=0x116b1bbd0, key=0x7fff5fbfdd10, mustExist=false,
comparator=0x7fff5fbfdd80) at container.hh:456
456 comparator); }
Value returned is $8 = 32
(gdb)
Run till exit from #0 0x000000010005de6b in
lout::container::typed::Vector<dw::OutOfFlowMgr::Float>::bsearch
(this=0x116b1bbd0, key=0x7fff5fbfdd10, mustExist=false,
comparator=0x7fff5fbfdd80) at container.hh:456
0x000000010005b27f in
dw::OutOfFlowMgr::SortedFloatsVector::findFloatIndex
(this=0x116b1bbd0, lastGB=0x116bf7270, lastExtIndex=-1) at
outofflowmgr.cc:340
340 int i = bsearch (&key, false, &comparator);
Value returned is $9 = 32
(gdb)
Run till exit from #0 0x000000010005b27f in
dw::OutOfFlowMgr::SortedFloatsVector::findFloatIndex
(this=0x116b1bbd0, lastGB=0x116bf7270, lastExtIndex=-1) at
outofflowmgr.cc:340
0x000000010005b986 in dw::OutOfFlowMgr::SortedFloatsVector::findFirst
(this=0x116b1bbd0, textblock=0x116bf7270, y=330882, h=1,
lastGB=0x116bf7270, lastExtIndex=-1, lastReturn=0x0) at
outofflowmgr.cc:424
424 int last = findFloatIndex (lastGB, lastExtIndex);
Value returned is $10 = 31
(gdb)
Run till exit from #0 0x000000010005b986 in
dw::OutOfFlowMgr::SortedFloatsVector::findFirst (this=0x116b1bbd0,
textblock=0x116bf7270, y=330882, h=1, lastGB=0x116bf7270,
lastExtIndex=-1, lastReturn=0x0) at outofflowmgr.cc:424
0x000000010005bd1a in dw::OutOfFlowMgr::hasFloat (this=0x116b1bb60,
textblock=0x116bf7270, side=dw::OutOfFlowMgr::LEFT, y=330882, h=1,
lastGB=0x116bf7270, lastExtIndex=-1) at outofflowmgr.cc:2115
2115 int first = list->findFirst (textblock, y, h, lastGB,
lastExtIndex, NULL);
Value returned is $11 = 29
(gdb)
Run till exit from #0 0x000000010005bd1a in
dw::OutOfFlowMgr::hasFloat (this=0x116b1bb60, textblock=0x116bf7270,
side=dw::OutOfFlowMgr::LEFT, y=330882, h=1, lastGB=0x116bf7270,
lastExtIndex=-1) at outofflowmgr.cc:2115
0x000000010005bdd0 in dw::OutOfFlowMgr::hasFloatLeft
(this=0x116b1bb60, textblock=0x116bf7270, y=330882, h=1,
lastGB=0x116bf7270, lastExtIndex=-1) at outofflowmgr.cc:2092
2092 bool b = hasFloat (textblock, LEFT, y, h, lastGB, lastExtIndex);
Value returned is $12 = true
(gdb)
Run till exit from #0 0x000000010005bdd0 in
dw::OutOfFlowMgr::hasFloatLeft (this=0x116b1bb60,
textblock=0x116bf7270, y=330882, h=1, lastGB=0x116bf7270,
lastExtIndex=-1) at outofflowmgr.cc:2092
0x000000010006fdb2 in dw::Textblock::calcBorders (this=0x116bf7270,
lastOofRef=-1, height=1) at textblock_linebreaking.cc:2045
2045 effOofRef);
Value returned is $13 = true
(gdb)
Run till exit from #0 0x000000010006fdb2 in
dw::Textblock::calcBorders (this=0x116bf7270, lastOofRef=-1, height=1)
at textblock_linebreaking.cc:2045
dw::Textblock::balanceBreakPosAndHeight (this=0x116bf7270,
wordIndex=0, firstIndex=0, searchUntil=0x7fff5fbfe078,
tempNewLine=false, penaltyIndex=0, borderIsCalculated=true,
thereWillBeMoreSpace=0x7fff5fbfe08d, wrapAll=false,
diffWords=0x7fff5fbfe084, wordIndexEnd=0x7fff5fbfe070,
lastFloatPos=0x7fff5fbfe064, regardBorder=true, height=0x7fff5fbfe06c,
breakPos=0x7fff5fbfe068) at textblock_linebreaking.cc:912
912 newLineHasFloatLeft || newLineHasFloatRight : false;
(gdb)
Run till exit from #0 dw::Textblock::balanceBreakPosAndHeight
(this=0x116bf7270, wordIndex=0, firstIndex=0,
searchUntil=0x7fff5fbfe078, tempNewLine=false, penaltyIndex=0,
borderIsCalculated=true, thereWillBeMoreSpace=0x7fff5fbfe08d,
wrapAll=false, diffWords=0x7fff5fbfe084, wordIndexEnd=0x7fff5fbfe070,
lastFloatPos=0x7fff5fbfe064, regardBorder=true, height=0x7fff5fbfe06c,
breakPos=0x7fff5fbfe068) at textblock_linebreaking.cc:912
dw::Textblock::wrapWordInFlow (this=0x116bf7270, wordIndex=0,
wrapAll=false) at textblock_linebreaking.cc:749
749 int yNewLine = yOffsetOfLineToBeCreated ();
(gdb)
Run till exit from #0 dw::Textblock::wrapWordInFlow
(this=0x116bf7270, wordIndex=0, wrapAll=false) at
textblock_linebreaking.cc:749
^C
Program received signal SIGINT, Interrupt.
0x000000010005d834 in
lout::container::typed::HashTable<lout::object::TypedPointer<dw::Textblock>,
dw::OutOfFlowMgr::TBInfo>::get (this=0x116b1bd80, key=0x7fff5fbfdb80)
at container.hh:524
524 { return (V*)((untyped::HashTable*)this->base)->get(key); }
(gdb) finish
Run till exit from #0 0x000000010005d834 in
lout::container::typed::HashTable<lout::object::TypedPointer<dw::Textblock>,
dw::OutOfFlowMgr::TBInfo>::get (this=0x116b1bd80, key=0x7fff5fbfdb80)
at container.hh:524
0x00000001000587fd in dw::OutOfFlowMgr::getTextblock
(this=0x116b1bb60, textblock=0x116b1b9b0) at outofflowmgr.cc:1954
1954 TBInfo *tbInfo = tbInfosByTextblock->get (&key);
Value returned is $14 = ('dw::OutOfFlowMgr::TBInfo' *) 0x116b1bf10
(gdb)
Run till exit from #0 0x00000001000587fd in
dw::OutOfFlowMgr::getTextblock (this=0x116b1bb60,
textblock=0x116b1b9b0) at outofflowmgr.cc:1954
0x0000000100059aee in
dw::OutOfFlowMgr::Float::CompareGBAndExtIndex::compare
(this=0x7fff5fbfdd80, o1=0x7fff5fbfdd10, o2=0x117126ff0) at
outofflowmgr.cc:292
292 *t2 = oofm->getTextblock (f2->generatingBlock);
Value returned is $15 = ('dw::OutOfFlowMgr::TBInfo' *) 0x116b1bf10
(gdb)
Run till exit from #0 0x0000000100059aee in
dw::OutOfFlowMgr::Float::CompareGBAndExtIndex::compare
(this=0x7fff5fbfdd80, o1=0x7fff5fbfdd10, o2=0x117126ff0) at
outofflowmgr.cc:292
0x000000010009eaf6 in lout::container::untyped::Vector::bsearch
(this=0x116b1bc00, key=0x7fff5fbfdd10, mustExist=false, start=0,
end=38, comparator=0x7fff5fbfdd80) at container.cc:239
239 int c = comparator->compare (key, array[index]);
Value returned is $16 = -2
(gdb)
Run till exit from #0 0x000000010009eaf6 in
lout::container::untyped::Vector::bsearch (this=0x116b1bc00,
key=0x7fff5fbfdd10, mustExist=false, start=0, end=38,
comparator=0x7fff5fbfdd80) at container.cc:239
0x000000010005de36 in lout::container::untyped::Vector::bsearch
(this=0x116b1bc00, key=0x7fff5fbfdd10, mustExist=false,
comparator=0x7fff5fbfdd80) at container.hh:159
159 { return bsearch (key, mustExist, 0, size () - 1, comparator); }
Value returned is $17 = 32
(gdb)
Run till exit from #0 0x000000010005de36 in
lout::container::untyped::Vector::bsearch (this=0x116b1bc00,
key=0x7fff5fbfdd10, mustExist=false, comparator=0x7fff5fbfdd80) at
container.hh:159
0x000000010005de6b in
lout::container::typed::Vector<dw::OutOfFlowMgr::Float>::bsearch
(this=0x116b1bbd0, key=0x7fff5fbfdd10, mustExist=false,
comparator=0x7fff5fbfdd80) at container.hh:456
456 comparator); }
Value returned is $18 = 32
(gdb)
Run till exit from #0 0x000000010005de6b in
lout::container::typed::Vector<dw::OutOfFlowMgr::Float>::bsearch
(this=0x116b1bbd0, key=0x7fff5fbfdd10, mustExist=false,
comparator=0x7fff5fbfdd80) at container.hh:456
0x000000010005b27f in
dw::OutOfFlowMgr::SortedFloatsVector::findFloatIndex
(this=0x116b1bbd0, lastGB=0x116bf7270, lastExtIndex=-1) at
outofflowmgr.cc:340
340 int i = bsearch (&key, false, &comparator);
Value returned is $19 = 32
(gdb)
Run till exit from #0 0x000000010005b27f in
dw::OutOfFlowMgr::SortedFloatsVector::findFloatIndex
(this=0x116b1bbd0, lastGB=0x116bf7270, lastExtIndex=-1) at
outofflowmgr.cc:340
0x000000010005b986 in dw::OutOfFlowMgr::SortedFloatsVector::findFirst
(this=0x116b1bbd0, textblock=0x116bf7270, y=616745, h=1,
lastGB=0x116bf7270, lastExtIndex=-1, lastReturn=0x0) at
outofflowmgr.cc:424
424 int last = findFloatIndex (lastGB, lastExtIndex);
Value returned is $20 = 31
(gdb)
Run till exit from #0 0x000000010005b986 in
dw::OutOfFlowMgr::SortedFloatsVector::findFirst (this=0x116b1bbd0,
textblock=0x116bf7270, y=616745, h=1, lastGB=0x116bf7270,
lastExtIndex=-1, lastReturn=0x0) at outofflowmgr.cc:424
0x000000010005bd1a in dw::OutOfFlowMgr::hasFloat (this=0x116b1bb60,
textblock=0x116bf7270, side=dw::OutOfFlowMgr::LEFT, y=616745, h=1,
lastGB=0x116bf7270, lastExtIndex=-1) at outofflowmgr.cc:2115
2115 int first = list->findFirst (textblock, y, h, lastGB,
lastExtIndex, NULL);
Value returned is $21 = 29
(gdb)
Run till exit from #0 0x000000010005bd1a in
dw::OutOfFlowMgr::hasFloat (this=0x116b1bb60, textblock=0x116bf7270,
side=dw::OutOfFlowMgr::LEFT, y=616745, h=1, lastGB=0x116bf7270,
lastExtIndex=-1) at outofflowmgr.cc:2115
0x000000010005bdd0 in dw::OutOfFlowMgr::hasFloatLeft
(this=0x116b1bb60, textblock=0x116bf7270, y=616745, h=1,
lastGB=0x116bf7270, lastExtIndex=-1) at outofflowmgr.cc:2092
2092 bool b = hasFloat (textblock, LEFT, y, h, lastGB, lastExtIndex);
Value returned is $22 = true
(gdb)
Run till exit from #0 0x000000010005bdd0 in
dw::OutOfFlowMgr::hasFloatLeft (this=0x116b1bb60,
textblock=0x116bf7270, y=616745, h=1, lastGB=0x116bf7270,
lastExtIndex=-1) at outofflowmgr.cc:2092
0x000000010006fdb2 in dw::Textblock::calcBorders (this=0x116bf7270,
lastOofRef=-1, height=1) at textblock_linebreaking.cc:2045
2045 effOofRef);
Value returned is $23 = true
(gdb)
Run till exit from #0 0x000000010006fdb2 in
dw::Textblock::calcBorders (this=0x116bf7270, lastOofRef=-1, height=1)
at textblock_linebreaking.cc:2045
dw::Textblock::balanceBreakPosAndHeight (this=0x116bf7270,
wordIndex=0, firstIndex=0, searchUntil=0x7fff5fbfe078,
tempNewLine=false, penaltyIndex=0, borderIsCalculated=true,
thereWillBeMoreSpace=0x7fff5fbfe08d, wrapAll=false,
diffWords=0x7fff5fbfe084, wordIndexEnd=0x7fff5fbfe070,
lastFloatPos=0x7fff5fbfe064, regardBorder=true, height=0x7fff5fbfe06c,
breakPos=0x7fff5fbfe068) at textblock_linebreaking.cc:912
912 newLineHasFloatLeft || newLineHasFloatRight : false;
(gdb)
Run till exit from #0 dw::Textblock::balanceBreakPosAndHeight
(this=0x116bf7270, wordIndex=0, firstIndex=0,
searchUntil=0x7fff5fbfe078, tempNewLine=false, penaltyIndex=0,
borderIsCalculated=true, thereWillBeMoreSpace=0x7fff5fbfe08d,
wrapAll=false, diffWords=0x7fff5fbfe084, wordIndexEnd=0x7fff5fbfe070,
lastFloatPos=0x7fff5fbfe064, regardBorder=true, height=0x7fff5fbfe06c,
breakPos=0x7fff5fbfe068) at textblock_linebreaking.cc:912
dw::Textblock::wrapWordInFlow (this=0x116bf7270, wordIndex=0,
wrapAll=false) at textblock_linebreaking.cc:749
749 int yNewLine = yOffsetOfLineToBeCreated ();
(gdb)
Run till exit from #0 dw::Textblock::wrapWordInFlow
(this=0x116bf7270, wordIndex=0, wrapAll=false) at
textblock_linebreaking.cc:749
^C
Program received signal SIGINT, Interrupt.
dw::OutOfFlowMgr::Float::CompareGBAndExtIndex::compare
(this=0x7fff5fbfdd30, o1=0x7fff5fbfdcc0, o2=0x116bcf1e0) at
outofflowmgr.cc:295
295 for (TBInfo *t = t1; t != NULL; t = t->parent)
(gdb) finish
Run till exit from #0
dw::OutOfFlowMgr::Float::CompareGBAndExtIndex::compare
(this=0x7fff5fbfdd30, o1=0x7fff5fbfdcc0, o2=0x116bcf1e0) at
outofflowmgr.cc:295
0x000000010009eaf6 in lout::container::untyped::Vector::bsearch
(this=0x116b1bc00, key=0x7fff5fbfdcc0, mustExist=false, start=0,
end=38, comparator=0x7fff5fbfdd30) at container.cc:239
239 int c = comparator->compare (key, array[index]);
Value returned is $24 = 28
(gdb)
Run till exit from #0 0x000000010009eaf6 in
lout::container::untyped::Vector::bsearch (this=0x116b1bc00,
key=0x7fff5fbfdcc0, mustExist=false, start=0, end=38,
comparator=0x7fff5fbfdd30) at container.cc:239
0x000000010005de36 in lout::container::untyped::Vector::bsearch
(this=0x116b1bc00, key=0x7fff5fbfdcc0, mustExist=false,
comparator=0x7fff5fbfdd30) at container.hh:159
159 { return bsearch (key, mustExist, 0, size () - 1, comparator); }
Value returned is $25 = 32
(gdb)
Run till exit from #0 0x000000010005de36 in
lout::container::untyped::Vector::bsearch (this=0x116b1bc00,
key=0x7fff5fbfdcc0, mustExist=false, comparator=0x7fff5fbfdd30) at
container.hh:159
0x000000010005de6b in
lout::container::typed::Vector<dw::OutOfFlowMgr::Float>::bsearch
(this=0x116b1bbd0, key=0x7fff5fbfdcc0, mustExist=false,
comparator=0x7fff5fbfdd30) at container.hh:456
456 comparator); }
Value returned is $26 = 32
(gdb)
Run till exit from #0 0x000000010005de6b in
lout::container::typed::Vector<dw::OutOfFlowMgr::Float>::bsearch
(this=0x116b1bbd0, key=0x7fff5fbfdcc0, mustExist=false,
comparator=0x7fff5fbfdd30) at container.hh:456
0x000000010005b27f in
dw::OutOfFlowMgr::SortedFloatsVector::findFloatIndex
(this=0x116b1bbd0, lastGB=0x116bf7270, lastExtIndex=-1) at
outofflowmgr.cc:340
340 int i = bsearch (&key, false, &comparator);
Value returned is $27 = 32
(gdb)
Run till exit from #0 0x000000010005b27f in
dw::OutOfFlowMgr::SortedFloatsVector::findFloatIndex
(this=0x116b1bbd0, lastGB=0x116bf7270, lastExtIndex=-1) at
outofflowmgr.cc:340
0x000000010005b986 in dw::OutOfFlowMgr::SortedFloatsVector::findFirst
(this=0x116b1bbd0, textblock=0x116bf7270, y=948395, h=1,
lastGB=0x116bf7270, lastExtIndex=-1, lastReturn=0x0) at
outofflowmgr.cc:424
424 int last = findFloatIndex (lastGB, lastExtIndex);
Value returned is $28 = 31
(gdb)
Run till exit from #0 0x000000010005b986 in
dw::OutOfFlowMgr::SortedFloatsVector::findFirst (this=0x116b1bbd0,
textblock=0x116bf7270, y=948395, h=1, lastGB=0x116bf7270,
lastExtIndex=-1, lastReturn=0x0) at outofflowmgr.cc:424
0x000000010005bd1a in dw::OutOfFlowMgr::hasFloat (this=0x116b1bb60,
textblock=0x116bf7270, side=dw::OutOfFlowMgr::LEFT, y=948395, h=1,
lastGB=0x116bf7270, lastExtIndex=-1) at outofflowmgr.cc:2115
2115 int first = list->findFirst (textblock, y, h, lastGB,
lastExtIndex, NULL);
Value returned is $29 = 29
(gdb)
Run till exit from #0 0x000000010005bd1a in
dw::OutOfFlowMgr::hasFloat (this=0x116b1bb60, textblock=0x116bf7270,
side=dw::OutOfFlowMgr::LEFT, y=948395, h=1, lastGB=0x116bf7270,
lastExtIndex=-1) at outofflowmgr.cc:2115
0x000000010005bdd0 in dw::OutOfFlowMgr::hasFloatLeft
(this=0x116b1bb60, textblock=0x116bf7270, y=948395, h=1,
lastGB=0x116bf7270, lastExtIndex=-1) at outofflowmgr.cc:2092
2092 bool b = hasFloat (textblock, LEFT, y, h, lastGB, lastExtIndex);
Value returned is $30 = true
(gdb)
Run till exit from #0 0x000000010005bdd0 in
dw::OutOfFlowMgr::hasFloatLeft (this=0x116b1bb60,
textblock=0x116bf7270, y=948395, h=1, lastGB=0x116bf7270,
lastExtIndex=-1) at outofflowmgr.cc:2092
0x000000010006fdb2 in dw::Textblock::calcBorders (this=0x116bf7270,
lastOofRef=-1, height=1) at textblock_linebreaking.cc:2045
2045 effOofRef);
Value returned is $31 = true
(gdb)
Run till exit from #0 0x000000010006fdb2 in
dw::Textblock::calcBorders (this=0x116bf7270, lastOofRef=-1, height=1)
at textblock_linebreaking.cc:2045
dw::Textblock::initNewLine (this=0x116bf7270) at textblock_linebreaking.cc:1990
1990 newLineAscent = newLineDescent = 0;
(gdb)
Run till exit from #0 dw::Textblock::initNewLine (this=0x116bf7270)
at textblock_linebreaking.cc:1990
dw::Textblock::addLine (this=0x116bf7270, firstWord=0, lastWord=-1,
newLastOofPos=-1, temporary=false, minHeight=1) at
textblock_linebreaking.cc:523
523 return line;
(gdb)
Run till exit from #0 dw::Textblock::addLine (this=0x116bf7270,
firstWord=0, lastWord=-1, newLastOofPos=-1, temporary=false,
minHeight=1) at textblock_linebreaking.cc:523
dw::Textblock::wrapWordInFlow (this=0x116bf7270, wordIndex=0,
wrapAll=false) at textblock_linebreaking.cc:826
826 for(int i = breakPos + 1; i <= wordIndexEnd; i++)
Value returned is $32 = ('dw::Textblock::Line' *) 0x11ad3ca80
(gdb)
Run till exit from #0 dw::Textblock::wrapWordInFlow
(this=0x116bf7270, wordIndex=0, wrapAll=false) at
textblock_linebreaking.cc:826
0x0000000100072e23 in dw::Textblock::wordWrap (this=0x116bf7270,
wordIndex=0, wrapAll=false) at textblock_linebreaking.cc:606
606 n = wrapWordInFlow (wordIndex, wrapAll);
Value returned is $33 = 0
(gdb)
Run till exit from #0 0x0000000100072e23 in dw::Textblock::wordWrap
(this=0x116bf7270, wordIndex=0, wrapAll=false) at
textblock_linebreaking.cc:606
dw::Textblock::rewrap (this=0x116bf7270) at textblock_linebreaking.cc:1885
1885 for (int i = firstWord; i < words->size (); i++) {
Value returned is $34 = 0
(gdb)
Run till exit from #0 dw::Textblock::rewrap (this=0x116bf7270) at
textblock_linebreaking.cc:1885
dw::Textblock::sizeRequestImpl (this=0x116bf7270,
requisition=0x116bf7600) at textblock.cc:342
342 showMissingLines ();
(gdb)
Run till exit from #0 dw::Textblock::sizeRequestImpl
(this=0x116bf7270, requisition=0x116bf7600) at textblock.cc:342
dw::core::Widget::sizeRequest (this=0x116bf7270,
requisition=0x116bf7600) at widget.cc:495
495 this->requisition = *requisition;
(gdb)
Run till exit from #0 dw::core::Widget::sizeRequest
(this=0x116bf7270, requisition=0x116bf7600) at widget.cc:495
dw::Textblock::rewrap (this=0x116bf6ce0) at textblock_linebreaking.cc:1891
1891 wordWrap (i, false);
(gdb)
Run till exit from #0 dw::Textblock::rewrap (this=0x116bf6ce0) at
textblock_linebreaking.cc:1891
dw::Textblock::sizeRequestImpl (this=0x116bf6ce0,
requisition=0x116bf8ac0) at textblock.cc:342
342 showMissingLines ();
(gdb)
Run till exit from #0 dw::Textblock::sizeRequestImpl
(this=0x116bf6ce0, requisition=0x116bf8ac0) at textblock.cc:342
dw::core::Widget::sizeRequest (this=0x116bf6ce0,
requisition=0x116bf8ac0) at widget.cc:495
495 this->requisition = *requisition;
(gdb)
Run till exit from #0 dw::core::Widget::sizeRequest
(this=0x116bf6ce0, requisition=0x116bf8ac0) at widget.cc:495
dw::Textblock::rewrap (this=0x116bf67c0) at textblock_linebreaking.cc:1891
1891 wordWrap (i, false);
(gdb)
Run till exit from #0 dw::Textblock::rewrap (this=0x116bf67c0) at
textblock_linebreaking.cc:1891
dw::Textblock::sizeRequestImpl (this=0x116bf67c0,
requisition=0x11713ac20) at textblock.cc:342
342 showMissingLines ();
(gdb)
Run till exit from #0 dw::Textblock::sizeRequestImpl
(this=0x116bf67c0, requisition=0x11713ac20) at textblock.cc:342
dw::core::Widget::sizeRequest (this=0x116bf67c0,
requisition=0x11713ac20) at widget.cc:495
495 this->requisition = *requisition;
(gdb)
Run till exit from #0 dw::core::Widget::sizeRequest
(this=0x116bf67c0, requisition=0x11713ac20) at widget.cc:495
dw::Textblock::rewrap (this=0x116bf57d0) at textblock_linebreaking.cc:1891
1891 wordWrap (i, false);
(gdb)
Run till exit from #0 dw::Textblock::rewrap (this=0x116bf57d0) at
textblock_linebreaking.cc:1891
dw::Textblock::sizeRequestImpl (this=0x116bf57d0,
requisition=0x117119680) at textblock.cc:342
342 showMissingLines ();
(gdb)
Run till exit from #0 dw::Textblock::sizeRequestImpl
(this=0x116bf57d0, requisition=0x117119680) at textblock.cc:342
dw::core::Widget::sizeRequest (this=0x116bf57d0,
requisition=0x117119680) at widget.cc:495
495 this->requisition = *requisition;
(gdb)
Run till exit from #0 dw::core::Widget::sizeRequest
(this=0x116bf57d0, requisition=0x117119680) at widget.cc:495
dw::Textblock::rewrap (this=0x116bf5590) at textblock_linebreaking.cc:1891
1891 wordWrap (i, false);
(gdb)
Run till exit from #0 dw::Textblock::rewrap (this=0x116bf5590) at
textblock_linebreaking.cc:1891
dw::Textblock::sizeRequestImpl (this=0x116bf5590,
requisition=0x116bf5d80) at textblock.cc:342
342 showMissingLines ();
(gdb) bt
#0 dw::Textblock::sizeRequestImpl (this=0x116bf5590,
requisition=0x116bf5d80) at textblock.cc:342
#1 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116bf5590, requisition=0x116bf5d80) at widget.cc:494
#2 0x0000000100070199 in dw::Textblock::rewrap (this=0x116bf3c80) at
textblock_linebreaking.cc:1889
#3 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116bf3c80, requisition=0x100941240) at textblock.cc:341
#4 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116bf3c80, requisition=0x100941240) at widget.cc:494
#5 0x0000000100070199 in dw::Textblock::rewrap (this=0x102277cd0) at
textblock_linebreaking.cc:1889
#6 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x102277cd0, requisition=0x1009435c0) at textblock.cc:341
#7 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x102277cd0, requisition=0x1009435c0) at widget.cc:494
#8 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1d7f0) at
textblock_linebreaking.cc:1889
#9 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1d7f0, requisition=0x116b1daa0) at textblock.cc:341
#10 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1d7f0, requisition=0x116b1daa0) at widget.cc:494
#11 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1d060) at
textblock_linebreaking.cc:1889
#12 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1d060, requisition=0x116b1d3c0) at textblock.cc:341
#13 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1d060, requisition=0x116b1d3c0) at widget.cc:494
#14 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1ca30) at
textblock_linebreaking.cc:1889
#15 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1ca30, requisition=0x116b1cd80) at textblock.cc:341
#16 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1ca30, requisition=0x116b1cd80) at widget.cc:494
#17 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1c570) at
textblock_linebreaking.cc:1889
#18 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1c570, requisition=0x117125040) at textblock.cc:341
#19 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1c570, requisition=0x117125040) at widget.cc:494
#20 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1b9b0) at
textblock_linebreaking.cc:1889
#21 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1b9b0, requisition=0x116b1c180) at textblock.cc:341
#22 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1b9b0, requisition=0x116b1c180) at widget.cc:494
#23 0x0000000100070199 in dw::Textblock::rewrap (this=0x116b1b4f0) at
textblock_linebreaking.cc:1889
#24 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x116b1b4f0, requisition=0x116b1b6f4) at textblock.cc:341
#25 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1b4f0, requisition=0x116b1b6f4) at widget.cc:494
#26 0x0000000100058685 in dw::OutOfFlowMgr::ensureFloatSize
(this=0x1022478e0, vloat=0x116b1b6a0) at outofflowmgr.cc:2272
#27 0x000000010005b067 in dw::OutOfFlowMgr::tellFloatPosition
(this=0x1022478e0, widget=0x116b1b4f0, yReq=0) at outofflowmgr.cc:1534
#28 0x000000010005b1dc in dw::OutOfFlowMgr::tellPosition
(this=0x1022478e0, widget=0x116b1b4f0, yReq=0) at outofflowmgr.cc:1516
#29 0x0000000100072aef in dw::Textblock::wrapWordInFlow
(this=0x116b1ad70, wordIndex=1, wrapAll=true) at
textblock_linebreaking.cc:788
#30 0x0000000100072e23 in dw::Textblock::wordWrap (this=0x116b1ad70,
wordIndex=1, wrapAll=true) at textblock_linebreaking.cc:606
#31 0x000000010006fbb2 in dw::Textblock::showMissingLines
(this=0x116b1ad70) at textblock_linebreaking.cc:2113
#32 0x000000010006b230 in dw::Textblock::sizeRequestImpl
(this=0x116b1ad70, requisition=0x10095b450) at textblock.cc:342
#33 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x116b1ad70, requisition=0x10095b450) at widget.cc:494
#34 0x0000000100070199 in dw::Textblock::rewrap (this=0x10210cdf0) at
textblock_linebreaking.cc:1889
#35 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x10210cdf0, requisition=0x1009597c0) at textblock.cc:341
#36 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x10210cdf0, requisition=0x1009597c0) at widget.cc:494
#37 0x0000000100070199 in dw::Textblock::rewrap (this=0x10054a2c0) at
textblock_linebreaking.cc:1889
#38 0x000000010006b227 in dw::Textblock::sizeRequestImpl
(this=0x10054a2c0, requisition=0x7fff5fbff040) at textblock.cc:341
#39 0x000000010009c7a7 in dw::core::Widget::sizeRequest
(this=0x10054a2c0, requisition=0x7fff5fbff040) at widget.cc:494
#40 0x00000001000586cc in dw::OutOfFlowMgr::doFloatsExceedCB
(this=0x1022478e0, side=dw::OutOfFlowMgr::LEFT) at
outofflowmgr.cc:1045
#41 0x000000010005b757 in dw::OutOfFlowMgr::sizeAllocateEnd
(this=0x1022478e0, caller=0x10054a2c0) at outofflowmgr.cc:651
#42 0x000000010006ae82 in dw::Textblock::sizeAllocateImpl
(this=0x10054a2c0, allocation=0x7fff5fbff240) at textblock.cc:757
#43 0x000000010009cfb2 in dw::core::Widget::sizeAllocate
(this=0x10054a2c0, allocation=0x7fff5fbff240) at widget.cc:993
#44 0x000000010008e4ff in dw::core::Layout::resizeIdle
(this=0x105109370) at layout.cc:912
#45 0x0000000100076d9e in dw::fltk::FltkPlatform::generalIdle
(this=0x1051091c0) at fltkplatform.cc:627
#46 0x0000000100076def in dw::fltk::FltkPlatform::generalStaticIdle
(data=0x1051091c0) at fltkplatform.cc:617
#47 0x00000001000ad21e in fl_mac_flush_and_wait (time_to_wait=1e+20)
at Fl_cocoa.mm:806
#48 0x00000001000b0025 in Fl::run () at Fl.cxx:589
#49 0x00000001000044c5 in main (argc=1, argv=0x7fff5fbff3f8) at dillo.cc:588
(gdb)
On 1/21/15, Jorge Arellano Cid <jcid at dillo.org> wrote:
> Hi there,
>
> Trying to read about this laptop on slashdot dillo
> locks with 100% CPU and increasing memory footprint. :-P
>
>
> [1]
> http://hardware.slashdot.org/story/15/01/20/1655242/librem-a-laptop-custom-…
>
> --
> Cheers
> Jorge.-
>
> _______________________________________________
> Dillo-dev mailing list
> Dillo-dev at dillo.org
> http://lists.dillo.org/cgi-bin/mailman/listinfo/dillo-dev
>
Jan. 21, 2015
Dillo CPU-hog lock on slashdot
by jcidï¼ dillo.org
Hi there,
Trying to read about this laptop on slashdot dillo
locks with 100% CPU and increasing memory footprint. :-P
[1] http://hardware.slashdot.org/story/15/01/20/1655242/librem-a-laptop-custom-…
--
Cheers
Jorge.-
Jan. 20, 2015
Core-dump pasting from one form field into another
by johannes.hofmannï¼ gmx.de
Hi James,
On Tue, Jan 20, 2015 at 08:50:22PM +1300, James C wrote:
> Hi All,
>
> I think I've worked out what's going on with drag-and-drop.
>
> We're compiling with -fno-rtti and (some parts of) fltk do
> dynamic_cast, which needs rtti. The run-time handling for detecting
> the conflict is nonexistent/unforgiving.
>
> When I make the change below and rebuild, drag-and-drop starts working for me.
Cool that you found the reason!
>From http://en.wikipedia.org/wiki/FLTK fltk is supposed to work
without rtti, but things might have changed of course.
It would be cool if you could bring up the topic on an fltk list to
see if it's intended like this.
Cheers,
Johannes
Jan. 20, 2015
a different lines->getRef() segfault
by eoceneï¼ gmx.com
A new page was just coming in -- seems like the same sort of problem as
last time.
(gdb) bt
#0 0xb77bb424 in __kernel_vsyscall ()
#1 0xb72f9661 in *__GI_raise (sig=6)
at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2 0xb72fca92 in *__GI_abort () at abort.c:92
#3 0xb72f2878 in *__GI___assert_fail (
assertion=0x8151afe "i >= 0 && this->num - i > 0",
file=0x8151aee "../lout/misc.hh", line=167,
function=0x8151ba0 "T* lout::misc::SimpleVector<T>::getRef(int) const [with T = dw::Textblock::Line]") at assert.c:81
#4 0x080a9040 in lout::misc::SimpleVector<dw::Textblock::Line>::getRef (
this=0x953b618, i=-1) at ../lout/misc.hh:167
#5 0x080a2786 in dw::Textblock::sendSelectionEvent (this=0x916c610,
eventType=dw::core::SelectionState::BUTTON_RELEASE, event=0xbfbb8180)
at textblock.cc:1093
#6 0x080a24c3 in dw::Textblock::buttonReleaseImpl (this=0x916c610,
event=0xbfbb8180) at textblock.cc:1008
#7 0x080d8910 in dw::core::Widget::buttonRelease (this=0x916c610,
event=0xbfbb8180) at widget.cc:1027
#8 0x080cd617 in dw::core::Layout::processMouseEvent (this=0x90fc058,
event=0xbfbb8180, type=dw::core::Layout::BUTTON_RELEASE) at layout.cc:1234
#9 0x080cd00e in dw::core::Layout::buttonEvent (this=0x90fc058,
type=dw::core::Layout::BUTTON_RELEASE, view=0x90f9f60, numPressed=1,
x=127, y=180, state=0, button=1) at layout.cc:1023
#10 0x080c46ae in dw::core::Layout::buttonRelease (this=0x90fc058,
view=0x90f9f60, numPressed=1, x=127, y=180, state=0, button=1)
at layout.hh:345
#11 0x080c33f7 in dw::fltk::FltkViewBase::handle (this=0x90f9f60, event=2)
at fltkviewbase.cc:319
#12 0x080c5e8a in dw::fltk::FltkViewport::handle (this=0x90f9f60, event=2)
at fltkviewport.cc:331
#13 0x080ded22 in send(int, Fl_Widget*, Fl_Window*) ()
#14 0x080dfbaf in Fl::handle_(int, Fl_Window*) ()
#15 0x080dff0e in Fl::handle(int, Fl_Window*) ()
#16 0x08107e9d in fl_handle(_XEvent const&) ()
#17 0x08107fbc in do_queued_events() ()
#18 0x0810822a in fl_wait(double) ()
#19 0x080e08af in Fl::wait(double) ()
#20 0x080e099d in Fl::run() ()
#21 0x08052f7a in main (argc=1, argv=0xbfbb8854) at dillo.cc:588
Jan. 20, 2015
Core-dump pasting from one form field into another
by james.from.wellingtonï¼ gmail.com
Hi All,
I think I've worked out what's going on with drag-and-drop.
We're compiling with -fno-rtti and (some parts of) fltk do
dynamic_cast, which needs rtti. The run-time handling for detecting
the conflict is nonexistent/unforgiving.
When I make the change below and rebuild, drag-and-drop starts working for me.
The executable size penalty is significant. The only 3+MB one is the
only one with rtti turned on:
...$ ls -l versions/*/*/src/dillo
-rwxr-xr-x 1 ... staff 2943392 25 Nov 21:42
versions/cookies/dillo-jfw01/src/dillo
-rwxr-xr-x 1 ... staff 3253032 20 Jan 20:10
versions/everything/dillo-jfw01/src/dillo
-rwxr-xr-x 1 ... staff 2943096 26 Oct 16:46
versions/pull-everything/dillo-jfw01/src/dillo
-rwxr-xr-x 1 ... staff 2942840 15 Sep 18:11
versions/render/dillo-jfw01/src/dillo
-rwxr-xr-x 1 ... staff 2942448 28 Oct 17:58
versions/ssh-everything-dirty/dillo-jfw01/src/dillo
...$
There are two dynamic casts in fltk:
./src/Fl_cocoa.mm:3792: if ( dynamic_cast<Fl_Input_*>(w) != NULL ||
dynamic_cast<Fl_Text_Display*>(w) != NULL) {
./src/Fl_cocoa.mm:3973: BOOL to_quartz =
dynamic_cast<Fl_Printer*>(this) != NULL;
I have no opinion yet about how difficult they would be to replace.
The way forward should be decided by someone who remembers why no-rtti
was originally turned on.
Regards,
James.
$ hg diff configure.ac
diff -r e773dab661ec configure.ac
--- a/configure.ac Wed Sep 17 00:24:37 2014 +1200
+++ b/configure.ac Tue Jan 20 20:49:00 2015 +1300
@@ -488,7 +488,8 @@
dnl
if eval "test x$GCC = xyes"; then
- CXXFLAGS="$CXXFLAGS -Wall -W -Wno-unused-parameter -fno-rtti -fno-exceptions"
+ CXXFLAGS="$CXXFLAGS -Wall -W -Wno-unused-parameter -fno-exceptions"
+dnl removed -fno-rtti to enable DND in FLTK
fi
AC_SUBST(BASE_CUR_WORKING_DIR)
On 1/7/15, Johannes Hofmann <Johannes.Hofmann at gmx.de> wrote:
> On Sat, Dec 27, 2014 at 08:42:55PM +0100, Johannes Hofmann wrote:
>> On Sat, Dec 27, 2014 at 06:22:12PM +0000, eocene wrote:
>> > James wrote:
>> > > This is exercisable in Dillo 3.0.4.1, but not new. I found it by
>> > > accident in my hack-up of Dillo 3.0.4.
>> > >
>> > > The reproduction is:
>> > > - enable cookies for .google.com
>> > > - navigate to https://mail.google.com/mail/?ui=html
>> > > - fight the links until you get a screen with two fields, one for the
>> > > username and one for the password
>> > > - type something into the username field
>> > > - select it and drag to the password field
>> > > -- core dump
>> > >
>> > > I am on:
>> > >
>> > > - OSX 10.6.8
>> > > - Dillo 3.0.4.1 with SSL enabled
>> > > - FLTK 1.3.3
>> > > - with dpid, etc from Dillo 3.0.4 with extensive hacking
>> > >
>> > > so the fault could be Mac-specific.
>> >
>> > I tried playing around a little, on linux and not having a gmail acct,
>> > and nothing wanted to go wrong, so, yeah, it might be an osx issue...
>>
>> Can't reproduce it either on DragonFly BSD. I can try later to get
>> a stack trace on osx.
>
> On MacOSX all attempts to drag and drop crash dillo for me.
> As it also causes confusion on X11 based systems I disabled DND
> alltogether for now.
>
> Cheers,
> Johannes
>
> _______________________________________________
> Dillo-dev mailing list
> Dillo-dev at dillo.org
> http://lists.dillo.org/cgi-bin/mailman/listinfo/dillo-dev
>
Jan. 20, 2015
form input placeholder text
by eoceneï¼ gmx.com
Everyone's getting into the habit of using the html5
placeholder attributes on form inputs to tell users
what the inputs are for, decreasing usability for the
rest of us, so I implemented it for INPUT text/password.
(It's also legal on TEXTAREA.)
http://www.dillo.org/test/input_placeholder.diff
Jan. 20, 2015
addParbreak, display:inline
by eoceneï¼ gmx.com
I was looking at why the page numbers at the bottom of a startpage
search results page aren't visible.
It seems that the numbers are forms with display:inline.
open_form has HT2TB(html)->addParbreak (9, html->wordStyle ());
Am I correct in thinking that the assorted addParbreak()s have to come
out at some point for display to work, or is there some other plan?
I note that the html5 spec has:
"In quirks mode, the following rules are also expected to apply:
...
form { margin-bottom: 1em; }"
to provide the gap in this case.
Jan. 19, 2015
resolution independent px
by sgeerkenï¼ dillo.org
On So, Jan 18, 2015, Johannes Hofmann wrote:
> As nobody actually has a problem at the moment I think we can
> postpone this. It will come up again as high resolution devices are
> becoming more popular.
Furthermore, if such devices become more common, web designers may
become more aware of this problem; something like this
----------------------------------------------------------------------
Some text and an image:
<img src="http://www.dillo.org/Icons/ProgramIcon32.png"
style="min-height: 1em">
----------------------------------------------------------------------
would solve the problem, too (test it with different font sizes in
dillo 3.1-dev).
Sebastian
Jan. 18, 2015
should we have a dillo-announce list?
by eoceneï¼ gmx.com
James wrote:
> I've discovered openhub by accident:
> https://www.openhub.net/p?ref=homepage&q=dillo
>
> Would it be a sensible place to announce new releases of Dillo?
Are people using ohloh/openhub? I remember someone coming along at one
point during dillo2 and mentioning it on the list (perhaps asking what
to put in certain fields in the entry for dillo?), but that was a while
ago.
I was imagining asking Andreas to add a dillo-announce to lists.dillo.org...
Jan. 18, 2015
resolution independent px
by eoceneï¼ gmx.com
Johannes wrote:
> As nobody actually has a problem at the moment I think we can
> postpone this. It will come up again as high resolution devices are
> becoming more popular.
Speaking of high resolution devices, does it look like there's much
value these days in trying to get dillo to work better in the world
of touch interfaces, or has dillo been utterly passed by there for
one reason or another?
Jan. 18, 2015