gnucash: yelp fails to show "yelp ghelp:gnucash-guide"
This issue started showing up since the upreade to yelp 41, identified by openQA: https://openqa.opensuse.org/tests/2061878#step/gnucash/18
I reproduced it outside of openQA, by simply invoking: yelp ghelp:gnucash-guide
I did a few steps inside gdb; yelp_document_get_for_uri comes to doctype YELP_URI_DOCUMENT_TYPE_EXTERNAL, which further down seems not to have any special meaning and just leads to a generic error
(a bit a messy gdb transcript)
yelp_document_get_for_uri (uri=0x5555559a8a80) at libyelp/yelp-document.c:177
177 gchar *docuri = NULL;
(gdb)
179 YelpDocument *document = NULL;
(gdb)
181 if (documents == NULL)
(gdb) print document
$12 = 0x0
(gdb)
$13 = 0x0
(gdb) next
185 g_return_val_if_fail (yelp_uri_is_resolved (uri), NULL);
(gdb)
187 doctype = yelp_uri_get_document_type (uri);
(gdb)
189 if (doctype == YELP_URI_DOCUMENT_TYPE_TEXT ||
(gdb) print doctype
$14 = YELP_URI_DOCUMENT_TYPE_EXTERNAL
(gdb) next
190 doctype == YELP_URI_DOCUMENT_TYPE_HTML ||
(gdb)
204 else if (doctype == YELP_URI_DOCUMENT_TYPE_MAN) {
(gdb)
211 docuri = yelp_uri_get_document_uri (uri);
(gdb) print docuri
$15 = (gchar *) 0x0
(gdb) next
214 if (docuri == NULL)
(gdb) print docuri
$16 = (gchar *) 0x555555818c50 "file:///"
(gdb) next
216 document = g_hash_table_lookup (documents, docuri);
(gdb)
218 if (document != NULL) {
(gdb)
223 switch (yelp_uri_get_document_type (uri)) {
(gdb)
247 break;
(gdb)
253 if (document != NULL) {
(gdb)
258 g_free (docuri);
(gdb) print docuri
$17 = (gchar *) 0x555555818c50 "file:///"
(gdb) print doctype
$18 = YELP_URI_DOCUMENT_TYPE_EXTERNAL
(gdb) next
259 return NULL;
(gdb) next
260 }
(gdb)
Thread 1 "yelp" hit Breakpoint 1, help_cb_uri_resolved (uri=0x5555559a8a80, request=0x555555936060) at libyelp/yelp-view.c:825
825 doctype = yelp_uri_get_document_type (uri);
(gdb) print doctype
$19 = 32767
(gdb) step
yelp_uri_get_document_type (uri=0x5555559a8a80) at libyelp/yelp-uri.c:427
427 YelpUriPrivate *priv = yelp_uri_get_instance_private (uri);
(gdb)
0x00007ffff7fa6166 in yelp_uri_get_instance_private (self=0x0) at libyelp/yelp-uri.c:92
92 G_DEFINE_TYPE_WITH_PRIVATE (YelpUri, yelp_uri, G_TYPE_OBJECT)
(gdb)
yelp_uri_get_document_type (uri=0x5555559a8a80) at libyelp/yelp-uri.c:428
428 return priv->doctype;
(gdb)
429 }
(gdb)
help_cb_uri_resolved (uri=0x5555559a8a80, request=0x555555936060) at libyelp/yelp-view.c:826
826 if (doctype == YELP_URI_DOCUMENT_TYPE_NOT_FOUND) {
(gdb)
838 } else if (doctype == YELP_URI_DOCUMENT_TYPE_ERROR) {
(gdb)
846 _("Unknown Error."));