On 05/17/2014 07:30 AM, Johannes Schauer wrote: > Package: liferea > Version: 1.10.8-1 > Severity: grave > Justification: renders package unusable > > Hi, > > steps to reproduce: > > --%<--------------------------------------------------------------------------- > $ sudo debootstrap --variant=minbase sid debian-sid > http://127.0.0.1:3142/http.us.debian.org/debian > [...] > $ sudo chroot debian-sid apt-get update > [...] > $ sudo chroot debian-sid apt-get install liferea > [...] > $ sudo chroot debian-sid liferea > > (process:28562): Gtk-WARNING **: Locale not supported by C library. > Using the fallback 'C' locale. > > (liferea:28562): libnotify-WARNING **: Failed to connect to proxy > -->%--------------------------------------------------------------------------- > > Then, click on any feed on the left hand side. The result will be a > crash of liferea with the following printed on the terminal: > >
If you go into liferea's preferences and uncheck the checkbox that says "enable javascript". It will stop the crash from happening. To me, this sounds like a problem with /usr/lib/x86_64-linux-gnu/libjavascriptcoregtk-3.0.so.0 since that is where the execution is ended up right before it crashes. Unless you disagree, I'm going to move this bug report to the libjavascriptcoregtk-3.0 package. Attached is the "bt full" gdb trace that I obtained to reproduce the crash using your instrucitons. -David
bt full #0 0x00007ffff15ca55c in WTFCrash () at ../Source/WTF/wtf/Assertions.cpp:333 No locals. #1 0x00007ffff14d100b in JSC::VMEntryScope::requiredCapacity (this=this@entry=0x7fffffffcd50) at ../Source/JavaScriptCore/runtime/VMEntryScope.cpp:91 interpreter = <optimized out> requiredCapacity = 131072 #2 0x00007ffff14d10b7 in JSC::VMEntryScope::VMEntryScope (this=0x7fffffffcd50, vm=..., globalObject=0x7fffcc0ff970) at ../Source/JavaScriptCore/runtime/VMEntryScope.cpp:57 No locals. #3 0x00007ffff135bf1e in JSC::Interpreter::execute (this=0x7fffcca9fcf0, program=program@entry=0x7fffcc03fef0, callFrame=callFrame@entry=0x7fffcc0ff9b0, thisObj=0x7fffcc13ffb0) at ../Source/JavaScriptCore/interpreter/Interpreter.cpp:770 entryScope = {m_vm = @0x7fffccae8000, m_stackCheckPoint = {<No data fields>}, m_stack = { static s_defaultAvailabilityDelta = 65536, m_origin = 0x0, m_bound = 0x0}, m_globalObject = 0x7fffcc0ff970, m_prev = 0x0, m_prevStackLimit = 0x10000, m_recompilationNeeded = false} JSONPData = {<WTF::VectorBuffer<JSC::JSONPData, 0ul>> = {<WTF::VectorBufferBase<JSC::JSONPData>> = { m_buffer = 0xbadbeef7, m_capacity = 3758986912, m_size = 32767}, <No data fields>}, <No data fields>} programSource = {m_impl = {m_ptr = 0x7fffffffce68}} parseResult = <optimized out> protoCallFrame = {codeBlockValue = {u = {value = -8574853690035138576, callFrame = 0x890000001c820ff0, codeBlock = 0x890000001c820ff0, encodedValue = {asInt64 = -8574853690035138576, ptr = 0x890000001c820ff0, asBits = { payload = 478285808, tag = -1996488704}}, number = -2.4810405218124427e-265, integer = -8574853690035138576}}, scopeChainValue = {u = {value = -992678403661674304, callFrame = 0xf2394c40558b48c0, codeBlock = 0xf2394c40558b48c0, encodedValue = {asInt64 = -992678403661674304, ptr = 0xf2394c40558b48c0, asBits = {payload = 1435191488, tag = -231125952}}, ---Type <return> to continue, or q <return> to quit--- number = -1.6868647333863707e+242, integer = -992678403661674304}}, calleeValue = {u = { value = -3276087253930376689, callFrame = 0xd2890000004b820f, codeBlock = 0xd2890000004b820f, encodedValue = { asInt64 = -3276087253930376689, ptr = 0xd2890000004b820f, asBits = {payload = 4948495, tag = -762773504}}, number = -3.978585894076128e+89, integer = -3276087253930376689}}, argCountAndCodeOriginValue = {u = { value = -8410208381381202161, callFrame = 0x8b48f0094cc2af0f, codeBlock = 0x8b48f0094cc2af0f, encodedValue = { asInt64 = -8410208381381202161, ptr = 0x8b48f0094cc2af0f, asBits = {payload = 1287827215, tag = -1958154231}}, number = -2.6573518219715629e-254, integer = -8410208381381202161}}, thisArg = {u = { value = 5276043427988045933, callFrame = 0x4938458b48c3006d, codeBlock = 0x4938458b48c3006d, encodedValue = { asInt64 = 5276043427988045933, ptr = 0x4938458b48c3006d, asBits = {payload = 1220739181, tag = 1228424587}}, number = 5.4127602845995064e+44, integer = 5276043427988045933}}, paddedArgCount = 2215626373, args = 0x9820ff0394c} samplingScope = {m_interpreter = 0x7fffcca9fcf0} codeBlock = 0x7fffffffd670 result = <optimized out> #4 0x00007ffff148f39b in JSC::evaluate (exec=exec@entry=0x7fffcc0ff9b0, source=..., thisValue=..., returnedException=returnedException@entry=0x7fffffffd720) at ../Source/JavaScriptCore/runtime/Completion.cpp:82 profile = {m_active = false, static s_mode = JSC::CodeProfiling::Disabled, static s_tracker = 0x0, static s_profileStack = 0x0} lock = {m_vm = {m_ptr = 0x7fffccae8000}} program = 0x7fffcc03fef0 result = <optimized out> #5 0x00007ffff59c1438 in evaluate (exception=0x7fffffffd720, thisValue=..., source=..., exec=0x7fffcc0ff9b0) at ../Source/WebCore/bindings/js/JSMainThreadExecState.h:62 currentState = {static s_mainThreadState = 0x7fffcc0ff9b0, m_previousState = 0x0} lock = {m_vm = {m_ptr = 0x7fffccae8000}} #6 WebCore::ScriptController::evaluateInWorld (this=this@entry=0xd20900, sourceCode=..., world=...) at ../Source/WebCore/bindings/js/ScriptController.cpp:147 exec = 0x7fffcc0ff9b0 cookie = {m_instrumentingAgents = {m_ptr = 0x0}, m_timelineAgentId = 0} evaluationException = {static numberOfInt52Bits = 52, static int52ShiftAmount = 12, u = {asInt64 = 0, ptr = 0x0, asBits = {payload = 0, tag = 0}}} shell = 0xbbadbeef savedSourceURL = 0x0 lock = {m_vm = {m_ptr = 0x7fffccae8000}} sourceURL = {m_impl = {m_ptr = 0x7fffccad5348}} protect = {m_ptr = 0x7fffccaa9c00} #7 0x00007ffff59c170c in WebCore::ScriptController::evaluate (this=0xd20900, sourceCode=...) at ../Source/WebCore/bindings/js/ScriptController.cpp:163 No locals. #8 0x00007ffff5b71775 in WebCore::ScriptElement::executeScript (this=this@entry=0x7fffcca9fba0, sourceCode=...) at ../Source/WebCore/dom/ScriptElement.cpp:310 ignoreDesctructiveWriteCountIncrementer = <optimized out> currentScriptIncrementer = {m_document = 0xd2ec00, m_isHTMLScriptElement = true} frame = 0x7fffccaa9c00 document = {m_ptr = 0xd2ec00} sourceCode = @0x7fffffffd8a0: {m_provider = {m_ptr = 0x7fffccae7360}, m_code = {m_provider = { m_ptr = 0x7fffccae7360}, m_startChar = 0, m_endChar = 509, m_firstLine = 6, m_startColumn = 102}, m_cachedScript = {<WebCore::CachedResourceHandleBase> = {m_resource = 0x0}, <No data fields>}, m_url = {m_string = { m_impl = {m_ptr = 0x7fffccad5348}}, m_isValid = true, m_protocolIsInHTTPFamily = false, m_schemeEnd = 4, m_userStart = 7, m_userEnd = 7, m_passwordEnd = 7, m_hostEnd = 7, m_portEnd = 7, m_pathAfterLastSlash = 8, ---Type <return> to continue, or q <return> to quit--- m_pathEnd = 8, m_queryEnd = 8, m_fragmentEnd = 8}} this = 0x7fffcca9fba0 #9 0x00007ffff616296c in WebCore::XMLDocumentParser::endElementNs (this=0x7fffccad2c40) at ../Source/WebCore/xml/parser/XMLDocumentParserLibxml2.cpp:918 protect = {m_ptr = 0x7fffccad2c40} n = {m_ptr = 0x7fffcca9fb40} scriptElement = 0x7fffcca9fba0 this = 0x7fffccad2c40 #10 0x00007ffff78806e3 in xmlParseEndTag2 (ctxt=ctxt@entry=0xd99390, prefix=0x0, URI=0xd2d27c "http://www.w3.org/1999/xhtml", line=line@entry=0, nsNr=0, tlen=tlen@entry=0) at ../../parser.c:9719 name = <optimized out> #11 0x00007ffff7886183 in xmlParseTryOrFinish (ctxt=ctxt@entry=0xd99390, terminate=terminate@entry=0) at ../../parser.c:11569 ret = 0 avail = 1552 tlen = 6 cur = <optimized out> next = <optimized out> lastlt = 0xd6c28c "</html>" lastgt = 0xd6c292 ">" #12 0x00007ffff7887bce in xmlParseChunk__internal_alias (ctxt=0xd99390, chunk=0x7fffccb0085a "P", size=5100, terminate=0) at ../../parser.c:12280 end_in_lf = 0 remain = 0 old_avail = 45 avail = 2595 ---Type <return> to continue, or q <return> to quit--- #13 0x00007ffff6160d94 in WebCore::XMLDocumentParser::doWrite (this=this@entry=0x7fffccad2c40, parseString=...) at ../Source/WebCore/xml/parser/XMLDocumentParserLibxml2.cpp:679 protect = {m_ptr = 0x7fffccad2c40} scope = {static currentCachedResourceLoader = 0x7fffcca8d8f0, m_oldCachedResourceLoader = 0x0, m_oldGenericErrorFunc = 0x7ffff786b330 <xmlGenericErrorDefaultFunc>, m_oldStructuredErrorFunc = 0x0, m_oldErrorContext = 0x0} context = {m_ptr = 0x7fffcca8f040} #14 0x00007ffff615e7d1 in WebCore::XMLDocumentParser::append (this=0x7fffccad2c40, inputSource=...) at ../Source/WebCore/xml/parser/XMLDocumentParser.cpp:125 source = {m_pushedChar1 = 0, m_pushedChar2 = 0, m_currentString = {m_data = { string8Ptr = 0x7fffccae4800 "<?xml version=\"1.0\" encoding=\"utf-8\"?><!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"\n\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtm"..., string16Ptr = 0x7fffccae4800}, m_length = 2595, m_doNotExcludeLineNumbers = true, m_is8Bit = true, m_string = { m_impl = {m_ptr = 0x7fffccafa2a0}}}, m_currentChar = 60, m_numberOfCharactersConsumedPriorToCurrentString = 0, m_numberOfCharactersConsumedPriorToCurrentLine = 0, m_currentLine = 0, m_substrings = {m_start = 0, m_end = 0, m_buffer = {<WTF::VectorBufferBase<WebCore::SegmentedSubstring>> = {m_buffer = 0x0, m_capacity = 0, m_size = 0}, <No data fields>}}, m_closed = false, m_empty = false, m_fastPathFlags = 3 '\003', m_advanceFunc = (void (WebCore::SegmentedString::*)(WebCore::SegmentedString * const)) 0x7ffff58e71d0 <WebCore::SegmentedString::advance8()>, m_advanceAndUpdateLineNumberFunc = (void (WebCore::SegmentedString::*)(WebCore::SegmentedString * const)) 0x7ffff58e7250 <WebCore::SegmentedString::advanceAndUpdateLineNumber8()>} #15 0x00007ffff5afddee in WebCore::DecodedDataDocumentParser::appendBytes (this=0x7fffccad2c40, writer=..., data=0x7fffccae5400 "<?xml version=\"1.0\" encoding=\"utf-8\"?><!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"\n\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtm"..., length=2595) at ../Source/WebCore/dom/DecodedDataDocumentParser.cpp:50 ---Type <return> to continue, or q <return> to quit--- decoded = {m_impl = {m_ptr = 0x0}} #16 0x00007ffff5e34d54 in WebCore::DocumentLoader::commitData (this=this@entry=0x7fffccabe200, bytes=bytes@entry=0x7fffccae5400 "<?xml version=\"1.0\" encoding=\"utf-8\"?><!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"\n\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtm"..., length=length@entry=2595) at ../Source/WebCore/loader/DocumentLoader.cpp:843 No locals. #17 0x00007ffff580c7e6 in WebKit::FrameLoaderClient::committedLoad (this=0xd9e240, loader=0x7fffccabe200, data=0x7fffccae5400 "<?xml version=\"1.0\" encoding=\"utf-8\"?><!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"\n\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtm"..., length=2595) at ../Source/WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp:165 coreFrame = 0xbbadbeef #18 0x00007ffff5e3384f in WebCore::DocumentLoader::commitLoad (this=0x7fffccabe200, data=0x7fffccae5400 "<?xml version=\"1.0\" encoding=\"utf-8\"?><!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\"\n\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\">\n<html xmlns=\"http://www.w3.org/1999/xhtm"..., length=2595) at ../Source/WebCore/loader/DocumentLoader.cpp:773 protectFrame = {m_ptr = 0x7fffccaa9c00} protectLoader = {m_ptr = 0x7fffccabe200} frameLoader = 0x7fffccaa9c88 #19 0x00007ffff5e36a70 in WebCore::DocumentLoader::continueAfterContentPolicy (this=this@entry=0x7fffccabe200, policy=policy@entry=WebCore::PolicyUse) at ../Source/WebCore/loader/DocumentLoader.cpp:752 url = {m_string = {m_impl = {m_ptr = 0x7fffccad5348}}, m_isValid = true, m_protocolIsInHTTPFamily = false, m_schemeEnd = 4, m_userStart = 7, m_userEnd = 7, m_passwordEnd = 7, m_hostEnd = 7, m_portEnd = 7, m_pathAfterLastSlash = 8, m_pathEnd = 8, m_queryEnd = 8, m_fragmentEnd = 8} mimeType = @0x7fffccabe5b8: {m_impl = {m_ptr = 0x7fffcca8b380}} #20 0x00007ffff5e39e48 in WebCore::DocumentLoader::responseReceived (this=0x7fffccabe200, resource=<optimized out>, ---Type <return> to continue, or q <return> to quit--- response=...) at ../Source/WebCore/loader/DocumentLoader.cpp:655 protect = {m_ptr = 0x7fffccabe200} willLoadFallback = <optimized out> xFrameOptionHeader = @0xe84290: {m_string = {m_impl = {m_ptr = 0x7fffccad1a80}}} it = <optimized out> #21 0x00007ffff5e331bf in WebCore::DocumentLoader::handleSubstituteDataLoadNow (this=0x7fffccabe200) at ../Source/WebCore/loader/DocumentLoader.cpp:475 url = {m_string = {m_impl = {m_ptr = 0x7fffccad5348}}, m_isValid = true, m_protocolIsInHTTPFamily = false, m_schemeEnd = 4, m_userStart = 7, m_userEnd = 7, m_passwordEnd = 7, m_hostEnd = 7, m_portEnd = 7, m_pathAfterLastSlash = 8, m_pathEnd = 8, m_queryEnd = 8, m_fragmentEnd = 8} response = {<WebCore::ResourceResponseBase> = {m_url = {m_string = {m_impl = {m_ptr = 0x7fffccad5348}}, m_isValid = true, m_protocolIsInHTTPFamily = false, m_schemeEnd = 4, m_userStart = 7, m_userEnd = 7, m_passwordEnd = 7, m_hostEnd = 7, m_portEnd = 7, m_pathAfterLastSlash = 8, m_pathEnd = 8, m_queryEnd = 8, m_fragmentEnd = 8}, m_mimeType = {m_impl = {m_ptr = 0x7fffcca8b380}}, m_expectedContentLength = 2595, m_textEncodingName = {m_impl = {m_ptr = 0x7fffccad5280}}, m_suggestedFilename = {m_impl = { m_ptr = 0x7fffcca893e0}}, m_httpStatusText = {m_impl = {m_ptr = 0x0}}, m_httpHeaderFields = {<WTF::HashMap<WTF::AtomicString, WTF::String, WTF::CaseFoldingHash, WTF::HashTraits<WTF::AtomicString>, WTF::HashTraits<WTF::String> >> = {m_impl = {static m_maxLoad = <optimized out>, static m_minLoad = <optimized out>, m_table = 0x0, m_tableSize = 0, m_tableSizeMask = 0, m_keyCount = 0, m_deletedCount = 0}}, <No data fields>}, m_resourceLoadTiming = {m_ptr = 0x0}, m_httpStatusCode = 0, m_connectionID = 0, m_cacheControlMaxAge = 0, m_age = 0, m_date = 0, m_expires = 0, m_lastModified = 0, m_wasCached = false, m_connectionReused = false, m_isNull = false, m_haveParsedCacheControlHeader = false, m_haveParsedAgeHeader = false, m_haveParsedDateHeader = false, m_haveParsedExpiresHeader = false, m_haveParsedLastModifiedHeader = false, m_cacheControlContainsNoCache = false, m_cacheControlContainsNoStore = false, m_cacheControlContainsMustRevalidate = false}, m_soupFlags = (unknown: 0), ---Type <return> to continue, or q <return> to quit--- m_sniffedContentType = {m_impl = {m_ptr = 0x0}}, m_certificate = {m_ptr = 0x0}, m_tlsErrors = 0} #22 0x00007ffff5910681 in WebCore::ThreadTimers::sharedTimerFiredInternal (this=0x7fffccabcf50) at ../Source/WebCore/platform/ThreadTimers.cpp:132 timer = 0x7fffccabe978 interval = 7.0632744699729832e-304 fireTime = 10295.069917000001 timeToQuit = 10295.119917 #23 0x00007ffff5926322 in WebCore::sharedTimerTimeoutCallback () at ../Source/WebCore/platform/gtk/SharedTimerGtk.cpp:49 No locals. #24 0x00007ffff2856703 in g_timeout_dispatch (source=0xd235a0, callback=<optimized out>, user_data=<optimized out>) at /tmp/buildd/glib2.0-2.40.0/./glib/gmain.c:4472 timeout_source = 0xd235a0 again = <optimized out> #25 0x00007ffff2855ce5 in g_main_dispatch (context=0x6b3fa0) at /tmp/buildd/glib2.0-2.40.0/./glib/gmain.c:3064 dispatch = 0x7ffff28566f0 <g_timeout_dispatch> prev_source = 0x0 was_in_call = 0 user_data = 0x0 callback = 0x7ffff5926310 <WebCore::sharedTimerTimeoutCallback(gpointer)> cb_funcs = 0x7ffff2b13920 <g_source_callback_funcs> cb_data = 0xd23610 need_destroy = <optimized out> source = 0xd235a0 current = 0x6dfe80 i = 2 ---Type <return> to continue, or q <return> to quit--- #26 g_main_context_dispatch (context=context@entry=0x6b3fa0) at /tmp/buildd/glib2.0-2.40.0/./glib/gmain.c:3663 No locals. #27 0x00007ffff2856048 in g_main_context_iterate (context=context@entry=0x6b3fa0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /tmp/buildd/glib2.0-2.40.0/./glib/gmain.c:3734 max_priority = 120 timeout = 0 some_ready = 1 nfds = <optimized out> allocated_nfds = 8 fds = 0xce6760 #28 0x00007ffff28560ec in g_main_context_iteration (context=0x6b3fa0, context@entry=0x0, may_block=may_block@entry=1) at /tmp/buildd/glib2.0-2.40.0/./glib/gmain.c:3795 retval = <optimized out> #29 0x00007ffff359467c in g_application_run (application=0x6ed900, argc=argc@entry=0, argv=argv@entry=0x0) at /tmp/buildd/glib2.0-2.40.0/./gio/gapplication.c:2114 arguments = 0x69d7b0 status = 0 __FUNCTION__ = "g_application_run" #30 0x000000000041b56d in main (argc=1, argv=0x7fffffffe7f8) at main.c:262 app = 0x6ed900 error = 0x0 context = <optimized out> debug = <optimized out> debug_flags = 0 dbus = 0x6eaae0 ---Type <return> to continue, or q <return> to quit--- feedUri = 0x0 status = <optimized out> entries = {{long_name = 0x45e305 "mainwindow-state", short_name = 119 'w', flags = 0, arg = G_OPTION_ARG_STRING, arg_data = 0x67ce20 <initialStateOption>, description = 0x45e3a0 "Start Liferea with its main window in STATE. STATE may be `shown', `iconified', or `hidden'", arg_description = 0x45e316 "STATE"}, {long_name = 0x459259 "version", short_name = 118 'v', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x4304e0 <show_version>, description = 0x45e400 "Show version information and exit", arg_description = 0x0}, { long_name = 0x45e31c "add-feed", short_name = 97 'a', flags = 0, arg = G_OPTION_ARG_STRING, arg_data = 0x7fffffffe378, description = 0x45e325 "Add a new subscription", arg_description = 0x468b45 "uri"}, { long_name = 0x0, short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x0, description = 0x0, arg_description = 0x0}} debug_entries = {{long_name = 0x45e23e "debug-all", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e4b8 "Print debugging messages of all types", arg_description = 0x0}, { long_name = 0x45e24a "debug-cache", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e4e0 "Print debugging messages for the cache handling", arg_description = 0x0}, { long_name = 0x45e258 "debug-conf", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e510 "Print debugging messages for the configuration handling" , arg_description = 0x0}, { long_name = 0x45e265 "debug-db", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e548 "Print debugging messages of the database handling", arg_description = 0x0}, { long_name = 0x45e270 "debug-gui", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, ---Type <return> to continue, or q <return> to quit--- arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e580 "Print debugging messages of all GUI functions", arg_description = 0x0}, { long_name = 0x45e27c "debug-html", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e5b0 "Enables HTML rendering debugging. Each time Liferea renders HTML output it will also dump the generated HTML into ~/.cache/liferea/output.xhtml", arg_description = 0x0}, {long_name = 0x45e289 "debug-net", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e640 "Print debugging messages of all network activity", arg_description = 0x0}, { long_name = 0x45e295 "debug-parsing", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e678 "Print debugging messages of all parsing functions", arg_description = 0x0}, { long_name = 0x45e2a5 "debug-performance", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e6b0 "Print debugging messages when a function takes too long to process", arg_description = 0x0}, {long_name = 0x45e2b9 "debug-trace", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e6f8 "Print debugging messages when entering/leaving functions", arg_description = 0x0}, { long_name = 0x45e2c7 "debug-update", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e738 "Print debugging messages of the feed update processing", arg_description = 0x0}, { long_name = 0x45e2d6 "debug-vfolder", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e770 "Print debugging messages of the search folder matching", arg_description = 0x0}, { long_name = 0x45e2e6 "debug-verbose", short_name = 0 '\000', flags = 8, arg = G_OPTION_ARG_CALLBACK, ---Type <return> to continue, or q <return> to quit--- arg_data = 0x430600 <debug_entries_parse_callback>, description = 0x45e7a8 "Print verbose debugging messages", arg_description = 0x0}, {long_name = 0x0, short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x0, description = 0x0, arg_description = 0x0}} __PRETTY_FUNCTION__ = "main" (gdb)