Status: New Owner: ---- Labels: Type-Defect Priority-Medium New issue 1340 by lucray.lemaire: Patch fails to generate diff on server when the source file does not end with newline char http://code.google.com/p/reviewboard/issues/detail?id=1340
*NOTE: Do not post confidential information in this bug report.* What version are you running? 1.0.3 with RBTools 0.2 beta2 What's the URL of the page containing the problem? What steps will reproduce the problem? 1. Create a file which ends with e.g. '}' instead of an empty line 2. Create the review with post-review (we use perforce) 3. What is the expected output? What do you see instead? The diff contains something similar to this: }--- //depot/ +++ //depot/ Patch misses the new file and puts the whole line inside the previous diff. Adding a newline char before the diff file like this does not solve the issue completely since the newline char is not in the depot file. } --- //depot/ +++ //depot/ What operating system are you using? What browser? Please provide any additional information below. Here is the call stack: Diff currently unavailable. Error: The patch to '//depot/*' didn't apply cleanly. The temporary files have been left in '/tmp/reviewboard.Svq_sy' for debugging purposes. `patch` returned: patching file /tmp/reviewboard.Svq_sy/tmpgqqll5 Hunk #3 FAILED at 32. 1 out of 3 hunks FAILED -- saving rejects to file /tmp/reviewboard.Svq_sy/tmpgqqll5-new.rej Details Traceback (most recent call last): File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.3.1-py2.5.egg/reviewboard/diffviewer/views.py", line 213, in view_diff_fragment file = get_requested_diff_file() File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.3.1-py2.5.egg/reviewboard/diffviewer/views.py", line 189, in get_requested_diff_file get_chunks) File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.3.1-py2.5.egg/reviewboard/diffviewer/diffutils.py", line 623, in get_diff_files large_data=True) File "/usr/lib/python2.5/site-packages/Djblets-0.5.3-py2.5.egg/djblets/util/misc.py", line 162, in cache_memoize data = lookup_callable() File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.3.1-py2.5.egg/reviewboard/diffviewer/diffutils.py", line 622, in <lambda> enable_syntax_highlighting), File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.3.1-py2.5.egg/reviewboard/diffviewer/diffutils.py", line 345, in get_chunks new = get_patched_file(old, filediff) File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.3.1-py2.5.egg/reviewboard/diffviewer/diffutils.py", line 261, in get_patched_file return patch(filediff.diff, buffer, filediff.dest_file) File "/usr/lib/python2.5/site-packages/ReviewBoard-1.0.3.1-py2.5.egg/reviewboard/diffviewer/diffutils.py", line 129, in patch (filename, tempdir, patch_output)) Exception: The patch to '//depot/*' didn't apply cleanly. The temporary files have been left in '/tmp/reviewboard.Svq_sy' for debugging purposes. `patch` returned: patching file /tmp/reviewboard.Svq_sy/tmpgqqll5 Hunk #3 FAILED at 32. 1 out of 3 hunks FAILED -- saving rejects to file /tmp/reviewboard.Svq_sy/tmpgqqll5-new.rej -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "reviewboard-issues" group. To post to this group, send email to reviewboard-issues@googlegroups.com To unsubscribe from this group, send email to reviewboard-issues+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/reviewboard-issues?hl=en -~----------~----~----~----~------~----~------~--~---