Description of problem:
Many common links do not open as they should
Version-Release number of selected component (if applicable):
1 Run a report, for instance "Receivable Aging"
Click on the link at the top "Accounts Receivable", note that it opens a register window for the link gnc-register:acct-guid=111e4cda6cef70094a3c2d252042283d#
2 Now try and click the link for a customer name, instead of showing the customer edit dialog nothing happens the link is: (gnccustomer:customer=96d9030cfdd0b3d0f5dcbbd7f0883592#)
3 Now click the link for a customer balance, note that it opens another report, the customer report for the link gnc-ownerreport:owner=c:7e9f57226a94833a6bd127eaba6c1ef2&acct=111e4cda6cef70094a3c2d252042283d#
4 On the new report typically you can click the "Invoice" link to open a copy of the invoice, notice it will not work, the link is gncinvoice:invoice=635f8e5f5108b52cd4acacbf11d71ae3#
5 The Customer Report link won't work to edit the customer either, the link is gnccustomer:customer=7e9f57226a94833a6bd127eaba6c1ef2#
Steps to Reproduce:
1. try the above steps on Fedora 14
2. compare to the same on Fedora 15
3. verify the same results for 64 and 32 versions
most links broken
This makes gnucash mostly unusable
I have discovered a possible reason that fedora 15 is broke, tell me what you think about this theory..
on Fedora 14 the link is gncCustomer:customer=4a7e9dfec733d57457ef444b7339e635#
see the "C" ustomer
on Fedora 15 the link is gnccustomer:customer=4a7e9dfec733d57457ef444b7339e635#
see the "c" ustomer
could the browser thing be that picky?
I know the command line is, but most dialogs in gnucash pick up both c and C
Created attachment 505517 [details]
Trace file with additional information
This trace file shows a critical warning that appears on Fedora 15 a customer link is clicked in the receivable aging report. This warning doesn't appear on Fedora 14.
Since the GnuCash versions on F14 and F15 are essentially the same, it suspect this is actually the result of different WebKit versions:
Created attachment 505518 [details]
Generated report on F14
This attachment shows the intermediary report that GnuCash generates and is rendered by Webkit on F14.
Created attachment 505519 [details]
Generated report on F15
And this is the intermediary html file generated on F15 for the same report.
Note that for both reports the custom type handler is gncCustomer with a capital C, while the warning in the trace file shows gnccustomer with small c.
It appears that the new version of webkit lowercases the type handlers before passing them back to the GnuCash code to handle.
I'm not sure if this should be dealt with in WebKit or GnuCash.
Thanks for tracking this down some more (and apologies for not getting to it yet).
Assigning to webkit for the moment.
Could this be possibly related:
"the webkit codebase is chock full of broken case-sensitive URL scheme compares (see FrameLoader.cpp for example). instead of changing all of those comparisons to be case-insensitive, it seems like it would be better to just make KURL normalize the URL scheme to lowercase."
"there should be no compatibility problem with this change since URL schemes are case-insensitive."
There is also another link to http://bugs.webkit.org/show_bug.cgi?id=53848
I think GnuCash is a bit sensitive so to speak?
@Bill: you're welcome (and no problem)
I have fixed this from the GnuCash side by forcing all custom URL handlers to lowercase avoiding any case sensitivity issues (see svn commits r20796 on trunk and r20797 on the 2.4 branch).
So this will be fixed with the next GnuCash release.
Moving back to gnucash, then.
gnucash-2.4.7-1.el6,gnucash-docs-2.4.1-1.el6 has been submitted as an update for Fedora EPEL 6.
gnucash-2.4.7-1.fc14,gnucash-docs-2.4.1-1.fc14 has been submitted as an update for Fedora 14.
gnucash-2.4.7-1.fc15,gnucash-docs-2.4.1-1.fc15 has been submitted as an update for Fedora 15.
Package gnucash-2.4.7-1.el6, gnucash-docs-2.4.1-1.el6:
* should fix your issue,
* was pushed to the Fedora EPEL 6 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=epel-testing gnucash-2.4.7-1.el6 gnucash-docs-2.4.1-1.el6'
as soon as you are able to.
Please go to the following url:
then log in and leave karma (feedback).
gnucash-2.4.7-1.fc14, gnucash-docs-2.4.1-1.fc14 has been pushed to the Fedora 14 stable repository. If problems still persist, please make note of it in this bug report.
gnucash-2.4.7-1.fc15, gnucash-docs-2.4.1-1.fc15 has been pushed to the Fedora 15 stable repository. If problems still persist, please make note of it in this bug report.
gnucash-2.4.7-1.el6, gnucash-docs-2.4.1-1.el6 has been pushed to the Fedora EPEL 6 stable repository. If problems still persist, please make note of it in this bug report.