Closed GoogleCodeExporter closed 8 years ago
From your log it appears that svnX is trying to display a file's diffs.
Depending on the changes in the file & the machine this can take some time
especially
when the "Highlight Characters" option is checked in the diff pane settings
menu.
However, in my experience it always completes.
Currently I have insufficient information to determine whether this is a
problem with svnX or not.
SvnX creates files with names like 'svnx-review-XXXXXXX.html' in /tmp that are
used to display the diffs.
Can you send a copy of the file with the latest modification date (following a
hang).
[You can send it directly to me if you prefer.]
Does the file display correctly if you open it in Safari?
Have you upgraded to one of the new Safaris (released this week)?
Which version of Safari are you using?
Original comment by chris...@gmail.com
on 17 Jun 2010 at 3:21
Yes, I upgraded to Safari 5.0 (5533.16) these days...
It can't open the *.html files as it always triggers an error relying to a
"long execution time of a script". Sorry, that I don't have the right
description on this as I use the localized german version.
I attached on of the HTMLs to this comment.
Regards,
Michl
Original comment by vlabmi...@gmail.com
on 17 Jun 2010 at 3:54
Attachments:
I just tried the file you sent with Safari 4.0.2 (PPC & Intel) & 5.0 (Intel).
It works fine, though it takes a long time (~350-380 secs). [Select Develop >
Disable Runaway JavaScript Timer.]
This is not surprising as it contains > 90 thousand lines of diffs!
I can't directly try your file in svnX, but if it works in Safari it WILL work
in svnX.
If you uncheck the "Highlight Characters" option before you select the file it
displays in ~20 secs.
Alternatively go & make yourself a strong cup of tea. It should be done by the
time you get back :-).
I have been pondering rewriting the diff display in C++ for some time. (It's
currently written in JavaScript.)
But it's a large amount of work and it's difficult to predict if it will be
much faster/better, or if it's worth it.
Original comment by chris...@gmail.com
on 17 Jun 2010 at 5:36
Ok, as I follow your thoughts it sounds quite capable that this is the problem.
Additionally I expected sth. similar, as I commit most of the time complex
XML-formatted OmniGraffle docs, the "misbehaviour" changes from file to file
and relies directly to the filesize as it represents more or less the actual
line count that is diffed by SVNX.
So, I think you're right. :)
Before porting your code to C++ a nice "workaround" would be add sth. like the
"Safari timeout alert" with a message that says "I'm not hanging it's just lots
of work in progress...Quit?" to give the user the opportunity cancel the diff.
Probably that would be easier to implement.
By the way: I like and use your app a lot!
- Michl
Original comment by vlabmi...@gmail.com
on 18 Jun 2010 at 7:19
Added support in 1.3b1 for adjusting the maximum amount of time spent
calculating each group of character diffs.
This defaults to medium, which is 100 ms. Previously it was 1 sec.
[Fast = 10 ms & Fastest = 1 ms.]
[As loading an HTML document in WebKit blocks the main thread & the 'Runaway
JavaScript Timer' is a feature of Safari (not WebKit), this will have to do for
now.]
Original comment by chris...@gmail.com
on 16 Sep 2010 at 12:28
Original issue reported on code.google.com by
vlabmi...@gmail.com
on 17 Jun 2010 at 9:20Attachments: