Status: New
Owner: ----
Labels: Type-Defect Priority-Medium

New issue 3422 by stuart.c...@gmail.com: Diff-viewer crash when viewing difference between diffs with deleted files.
http://code.google.com/p/reviewboard/issues/detail?id=3422

*** READ THIS BEFORE POSTING!
***
*** You must complete this form in its entirety, or your bug report will be
*** rejected.
***
*** If you have a security issue to report, please send it confidentially
to
*** secur...@reviewboard.org. Posting security-related issues to this bug
*** tracker causes us to have to do an emergency release.
***
*** For customer support, please post to reviewbo...@googlegroups.com
***
*** If you have a patch, please submit it to
http://reviews.reviewboard.org/
***
*** This bug tracker is public. Please check that any logs or other
information
*** that you include has been stripped of confidential information.


What version are you running?

1.7.22

What's the URL of the page containing the problem?

/reviews/r/500/diff/1-2/

What steps will reproduce the problem?
1. Create a review request with a diff that deletes several files in a subversion repository and modifies one file. 2. Upload a second diff, that also deletes the same files, but modifies the modified file differently.
3. Look at the delta between diff 1 and 2.

What is the expected output? What do you see instead?

Expected output:

No changes between diff 1 and 2 for the deleted files, because they're deleted in both diffs. Only difference should be the different modifications of the one modified file.

Actual output:

The modified file is displayed correctly. But, for every deleted file, there is this error and traceback:

Diff currently unavailable.
Error: list index out of range

Details

Traceback (most recent call last):
File "/usr/lib/python2.6/site-packages/ReviewBoard-1.7.22-py2.6.egg/reviewboard/diffviewer/views.py", line 251, in view_diff_fragment
    diff_file = get_requested_diff_file()
File "/usr/lib/python2.6/site-packages/ReviewBoard-1.7.22-py2.6.egg/reviewboard/diffviewer/views.py", line 171, in get_requested_diff_file
    populate_diff_chunks(files, highlighting, request=request)
File "/usr/lib/python2.6/site-packages/ReviewBoard-1.7.22-py2.6.egg/reviewboard/diffviewer/diffutils.py", line 344, in populate_diff_chunks
    chunks = generator.get_chunks()
File "/usr/lib/python2.6/site-packages/ReviewBoard-1.7.22-py2.6.egg/reviewboard/diffviewer/chunk_generator.py", line 137, in get_chunks
    large_data=True)
File "/usr/lib/python2.6/site-packages/Djblets-0.7.28-py2.6.egg/djblets/util/misc.py", line 157, in cache_memoize
    data = lookup_callable()
File "/usr/lib/python2.6/site-packages/ReviewBoard-1.7.22-py2.6.egg/reviewboard/diffviewer/chunk_generator.py", line 136, in <lambda>
    lambda: list(self._get_chunks_uncached()),
File "/usr/lib/python2.6/site-packages/ReviewBoard-1.7.22-py2.6.egg/reviewboard/diffviewer/chunk_generator.py", line 261, in _get_chunks_uncached
    yield self._new_chunk(lines, 0, num_lines, False, tag, meta)
File "/usr/lib/python2.6/site-packages/ReviewBoard-1.7.22-py2.6.egg/reviewboard/diffviewer/chunk_generator.py", line 363, in _new_chunk
    compute_chunk_last_header(lines, num_lines, meta, self._last_header)
File "/usr/lib/python2.6/site-packages/ReviewBoard-1.7.22-py2.6.egg/reviewboard/diffviewer/chunk_generator.py", line 526, in compute_chunk_last_header
    line = lines[0]
IndexError: list index out of range


What operating system are you using? What browser?

Linux. Firefox.

Please provide any additional information below.


--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
You received this message because you are subscribed to the Google Groups 
"reviewboard-issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to reviewboard-issues+unsubscr...@googlegroups.com.
To post to this group, send email to reviewboard-issues@googlegroups.com.
Visit this group at http://groups.google.com/group/reviewboard-issues.
For more options, visit https://groups.google.com/d/optout.

Reply via email to