<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>7145</bug_id>
          
          <creation_ts>2006-02-08 20:22:03 -0800</creation_ts>
          <short_desc>Report error during PostScript conversion via delegate</short_desc>
          <delta_ts>2010-06-10 14:18:23 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>420+</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.4</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>3527</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="David Kilzer (:ddkilzer)">ddkilzer</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>jordan.breeding</cc>
    
    <cc>sullivan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>31902</commentid>
    <comment_count>0</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-08 20:22:03 -0800</bug_when>
    <thetext>Via IRC conversation with Darin, errors during PostScript conversion need to be sent via delegate method back to Safari (or whatever is controlling WebKit).

[10:12pm] darin: - (void)webView:(WebView *)sender didFailLoadWithError:(NSError *)error forFrame:(WebFrame *)frame;
[10:12pm] darin: that&apos;s how errors get reported
[10:12pm] darin: it&apos;s not clear how to communicate that loading is taking place
[10:13pm] ddkilzer: Adding WebKit API to report PS conversion status and to report an error
[10:13pm] darin: that might require some new delegate call
[10:13pm] darin: sure
[10:13pm] darin: I guess PS conversion progress would be ideal, but the framework doesn&apos;t tell us that
[10:13pm] darin: instead it&apos;s just &quot;start and stop&quot; I guess
[10:13pm] darin: ddkilzer: I think the &quot;report an error&quot; case really just means using the existing delegate and a new NSError code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31913</commentid>
    <comment_count>1</comment_count>
      <attachid>6357</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-08 21:47:24 -0800</bug_when>
    <thetext>Created attachment 6357
Patch v1

First pass at a patch.  I&apos;m pretty sure I&apos;ll need a different NSError, but this code at least shows the URL in the Activity Window.

Also, I wasn&apos;t sure whether the NSError needed to be released.  When I tried to release it, the Activity Window would either cause a Bus Error or just not show up (with an error logged to the Terminal window where I started WebKit+Safari).

See Attachment 6314 from Bug 3527 for an invalid PostScript file to test with.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31924</commentid>
    <comment_count>2</comment_count>
      <attachid>6357</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2006-02-08 23:02:44 -0800</bug_when>
    <thetext>Comment on attachment 6357
Patch v1

Seems like the concept here is OK, but the error message is too vague. Also not sure if just calling the delegate is enough. We might also have to put the loader into the right &quot;state&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31946</commentid>
    <comment_count>3</comment_count>
      <attachid>6357</attachid>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-02-09 09:01:41 -0800</bug_when>
    <thetext>Comment on attachment 6357
Patch v1

This looks like the right approach.

The NSError doesn&apos;t need to be released, because it is returned from _webKitErrorWithDomain:code:URL: as an autoreleased object.

WebKitErrorCannotShowURL seems like the best choice of the existing WebKit errors, but I agree that it&apos;s not quite appropriate. We should invent a new error code just for this case. We can&apos;t modify WebKitErrors.h without API approval, so a new error would have to be added to WebKitErrorsPrivate.h.

Please add a comment explaining under what circumstances this conversion could fail. Also, please attach at least one test file to this bug that causes the error to occur.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31991</commentid>
    <comment_count>4</comment_count>
      <attachid>6376</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-09 20:34:10 -0800</bug_when>
    <thetext>Created attachment 6376
Test case (invalid PS file)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31993</commentid>
    <comment_count>5</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-09 20:41:41 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Please add a comment explaining under what circumstances this conversion could
&gt; fail. Also, please attach at least one test file to this bug that causes the
&gt; error to occur.

The circumstances under which this could occur are if CGPSConverterConvert() is passed an NSData object that is not a valid PostScript file.  I attached such a sample (basically the first few lines of a valid PostScript file with the rest of the content truncated) as Attachment 6376.  That method call simply returns a boolean value: true if the conversion succeeded or false if it did not.

Note that the CGPSConverterCallbacks structure has a callback method for passing messages about the conversion, e.g., if it fails, back to the caller.  I have not tried implementing this yet to see what kind of message is passed back for the invalid PostScript file I attached.  I will do that next.

http://developer.apple.com/documentation/GraphicsImaging/Conceptual/drawingwithquartz2d/dq_ps_convert/chapter_16_section_2.html
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>31997</commentid>
    <comment_count>6</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-09 21:15:26 -0800</bug_when>
    <thetext>I wired up a callback method to receive messages, and this is what was sent back for Attachment 6376:

%%[ Warning: Empty job. No PDF file produced. ] %%

I&apos;m not sure if these types of errors would be suitable to show the user directly, though.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32000</commentid>
    <comment_count>7</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-09 21:30:35 -0800</bug_when>
    <thetext>In another case, I tried renaming &apos;tiger.ps.gz&apos; (a gzipped version of tiger.ps) to &apos;tiger.ps&apos; and opening it from the filesystem, and got these callback messages:

%%[ Error: undefined; OffendingCommand:  ]%%
%%[ Flushing: rest of job (to end-of-file) will be ignored ]%%
%%[ Warning: PostScript error. No PDF file produced. ] %%

Then I took the contents of an existing PDF file and copied them to a file ending in &quot;.ps&quot; (which the Finder happily marked as a PostScript file):

$ cat payroll.pdf &gt; foo.ps

When I opened this file in Safari, this came out of the message callback method (there were three messages sent; each new message starts with &apos;%%&apos;):

%%[ Error: undefined; OffendingCommand: obj ]%%

Stack:
0
173


%%[ Flushing: rest of job (to end-of-file) will be ignored ]%%
%%[ Warning: PostScript error. No PDF file produced. ] %%
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32009</commentid>
    <comment_count>8</comment_count>
      <attachid>6381</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-09 22:49:55 -0800</bug_when>
    <thetext>Created attachment 6381
Patch v2

Version 2 of the patch.  This one adds a new error code and description.

Note that I filed bug 7171 while working on this new patch.

&gt; Please add a comment explaining under what circumstances this conversion could
&gt; fail.

BTW, did you mean a code comment or a Bugzilla comment?  I assumed a Bugzilla comment given the context of wanting a sample PostScript file that would cause a failure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32033</commentid>
    <comment_count>9</comment_count>
      <attachid>6381</attachid>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-02-10 08:48:35 -0800</bug_when>
    <thetext>Comment on attachment 6381
Patch v2

I actually meant a code comment, but I&apos;m grateful for the detailed explanation in the bug. Now that there&apos;s a WebKit error with a nice precise name, I don&apos;t think a code comment is necessary anymore.

In the block where you set up  the error, there&apos;s no reason to have a local variable for webView.

Since you&apos;ve introduced a new localizable string, you need to run the script update-webkit-localizable-strings (in WebKitTools/Scripts/) to update the Localizable.strings file. Otherwise the new string won&apos;t appear in the user interface (or be localizable). This makes me wonder how you tested the new error -- did you look in Safari&apos;s Activity window to see if the error string appeared? I would expect it not to since Localizable.strings wasn&apos;t updated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32059</commentid>
    <comment_count>10</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-10 12:27:15 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; Since you&apos;ve introduced a new localizable string, you need to run the script
&gt; update-webkit-localizable-strings (in WebKitTools/Scripts/) to update the
&gt; Localizable.strings file. Otherwise the new string won&apos;t appear in the user
&gt; interface (or be localizable).

Sorry, I wasn&apos;t aware of this step for either this bug or Bug 7171.  Is there some documentation that I failed to read in the project?  (Not that I&apos;ve read anything other than ChangeLogs and code, but if there is documentation to read, I&apos;d like to know about it!)

&gt; This makes me wonder how you tested the new
&gt; error -- did you look in Safari&apos;s Activity window to see if the error string
&gt; appeared? I would expect it not to since Localizable.strings wasn&apos;t updated.

Well no error message ever showed up in the Activity window under the URL and the file size when I used WebKitErrorCannotShowURL in Patch v1 (Attachment 6357), so I wasn&apos;t sure whether changing to a new error code would change that or not.  (I expected it to, but I wasn&apos;t too surprised when it didn&apos;t.)  I&apos;ll try the testcase for Bug 7176 to see if I get an error message in the Activity window.  (I&apos;ll also compare the results to Safari in 10.4.4 to see if I&apos;m missing anything.)
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32063</commentid>
    <comment_count>11</comment_count>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-02-10 12:48:21 -0800</bug_when>
    <thetext>There is some documentation at http://webkit.opendarwin.org/, but I looked around and didn&apos;t see any documentation for update-webkit-localizable-strings. So it&apos;s no surprise that you didn&apos;t find it, and I shouldn&apos;t expect you to run it. Hopefully that will be documented on the site soon, but for now don&apos;t worry about it. I&apos;ll check the patch in when it&apos;s ready and make sure the localized strings are updated.

I am surprised that no error text appears in the Activity window though, especially when you used WebKitErrorCannotShowURL. I&apos;ll try your patch and debug this on Safari to see what&apos;s going on; I&apos;ll report back here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32064</commentid>
    <comment_count>12</comment_count>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-02-10 12:49:52 -0800</bug_when>
    <thetext>I should also clarify that you won&apos;t see any error text in the Activity window for the test case in bug 7176 because Safari deliberately special-cases that error for the reasons explained in that bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32067</commentid>
    <comment_count>13</comment_count>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-02-10 13:32:28 -0800</bug_when>
    <thetext>Hmm, I seem to be missing something. Running with the latest WebKit, when I use Safari to try to view this invalid.ps file, either as a local or as a remote file, Preview takes over and puts up an alert about the failed conversion.

Note that this is without applying this patch, but my WebKit does include the postscript-to-PDF conversion from bug 3527. I wanted to check the behavior with and without the patch.

How do I make WebKit/Safari handle this PostScript file, rather than Preview?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32122</commentid>
    <comment_count>14</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-11 08:22:42 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; How do I make WebKit/Safari handle this PostScript file, rather than Preview?

PostScript files take the same path as PDF files (with the exception of the conversion process) when opened in Safari.  Do plain PDF files open in Preview as well when you access them via Safari?  If so, you probably have the WebKitOmitPDFSupport preference set to &quot;1&quot; or &quot;YES&quot;:

defaults read com.apple.Safari WebKitOmitPDFSupport
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32135</commentid>
    <comment_count>15</comment_count>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-02-11 09:41:26 -0800</bug_when>
    <thetext>Nope, that&apos;s not it. I don&apos;t have that default set, and Safari does display my PDF files.

As a local file, invalid.ps isn&apos;t selectable in the Open File dialog, since Safari hasn&apos;t (yet) been taught that it knows about this file type.

I put invalid.ps onto a remote server and tried to open it from there; it was downloaded and handed off to Preview, rather than opened inline.

Are you doing something different?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32142</commentid>
    <comment_count>16</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-11 10:24:08 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; As a local file, invalid.ps isn&apos;t selectable in the Open File dialog, since
&gt; Safari hasn&apos;t (yet) been taught that it knows about this file type.

Using nightly WebKit-SVN-r12751.dmg, I am able to select invalid.ps from an Open File dialog and it opens in Safari.

&gt; I put invalid.ps onto a remote server and tried to open it from there; it was
&gt; downloaded and handed off to Preview, rather than opened inline.

Using the same nightly build, if I click on the attachment link in this bug, the invalid.ps file opens in Safari.

&gt; Are you doing something different?

Not that I am aware of.

Regarding the error message, I tried running update-webkit-localizable-strings and rebuilding WebKit locally, but when invalid.ps opens in Safari, I do NOT see any error message in the Activity Window.  Is the message in Patch v2 too long for it to be displayed?

(In reply to comment #9)
&gt; In the block where you set up  the error, there&apos;s no reason to have a local
&gt; variable for webView.

The &quot;webView&quot; variable is used twice: Once to get the delegate and once to pass the webView back into the delegate method.  Are you saying I don&apos;t need to get the delegate first and just call _didFailLoadWithError:forFrame directly on the view instead?
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32164</commentid>
    <comment_count>17</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-11 13:23:16 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; The &quot;webView&quot; variable is used twice: Once to get the delegate and once to pass
&gt; the webView back into the delegate method.  Are you saying I don&apos;t need to get
&gt; the delegate first and just call _didFailLoadWithError:forFrame directly on the
&gt; view instead?

That won&apos;t work since it&apos;s a private method.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32250</commentid>
    <comment_count>18</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-12 12:56:32 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; Regarding the error message, I tried running update-webkit-localizable-strings
&gt; and rebuilding WebKit locally, but when invalid.ps opens in Safari, I do NOT
&gt; see any error message in the Activity Window.  Is the message in Patch v2 too
&gt; long for it to be displayed?

Okay, I finally saw some &quot;other&quot; error messages today in the activity window, like &quot;cancelled&quot;, &quot;can&apos;t find host&quot;, and &quot;lost network connection&quot;.  (Yes, I&apos;m not happy with the number of packets that my ISP is currently dropping.)

What happens with an invalid PS file is that the size of the file turns red in the &quot;Status&quot; column (&quot;0.3 KB&quot;) instead of showing the actual message.  Does this make sense?
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32332</commentid>
    <comment_count>19</comment_count>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-02-13 12:51:52 -0800</bug_when>
    <thetext>&gt;The &quot;webView&quot; variable is used twice: Once to get the delegate and once to pass
&gt;the webView back into the delegate method.

I had overlooked the fact that the local variable webView is used twice, so no problem there.

&gt;What happens with an invalid PS file is that the size of the file turns red in
&gt;the &quot;Status&quot; column (&quot;0.3 KB&quot;) instead of showing the actual message.  Does
&gt;this make sense?

I understand what you&apos;re saying, but it&apos;s not the expected/desired behavior. The file size should be replaced by the error message if there&apos;s an error. This seems likely to be a Safari bug rather than a WebKit bug, but I still can&apos;t reproduce because when I try to load the file Invalid.ps Preview takes over. I wish I knew why this behavior is different for the two of us. Maybe someone else could try this and report what happens to them?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32546</commentid>
    <comment_count>20</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2006-02-14 20:13:21 -0800</bug_when>
    <thetext>When I load the PS file with the latest nightly it tries to load inside Safari&apos;s main window.  If I do `defaults write com.apple.Safari WebKitOmitPDFSupport -bool YES` and restart the nightly the PS file then loads in Preview as expected.  Perhaps you have that default enabled John?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32733</commentid>
    <comment_count>21</comment_count>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-02-15 11:51:04 -0800</bug_when>
    <thetext>I definitely do not have that default set. PDF files are loaded in Safari just fine. But .ps files (or at least the invalid.ps file attached to this bug) are not. Hmm.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32792</commentid>
    <comment_count>22</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-15 15:01:13 -0800</bug_when>
    <thetext>(In reply to comment #21)
&gt; I definitely do not have that default set. PDF files are loaded in Safari just
&gt; fine. But .ps files (or at least the invalid.ps file attached to this bug) are
&gt; not. Hmm.

Do you want me to gather results from more testers, John?  I thought about posting this request to the webkit-dev mailing list, but decided that would be overkill.

Are you using a production release version of Mac OS X, or is it something different?  Is there another system you can try this on besides your own?
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>32975</commentid>
    <comment_count>23</comment_count>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-02-16 09:25:52 -0800</bug_when>
    <thetext>OK, my computer seems to have finally regained its senses. I have no idea what changed between all of my earlier attempts and now, but I can now select the invalid.ps file locally from the Open dialog of Safari. I can also (failed-)load it from a remote location in Safari. I can&apos;t explain why I was getting different behavior before, but let&apos;s just hope it was some sort of user error on my part.

Anyway, now that I&apos;ve gotten this far, I will apply this patch and see what&apos;s going on in the Activity window.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>33024</commentid>
    <comment_count>24</comment_count>
    <who name="John Sullivan">sullivan</who>
    <bug_when>2006-02-16 10:38:23 -0800</bug_when>
    <thetext>I applied patch v2 and ran it under a debug build of Safari. It hits an assertion there, which shows a flaw in the patch. (The incorrect appearance seen in the Activity window with a size shown in red is probably a side-effect of this flaw, but I didn&apos;t investigate that exact issue.)

The flaw is that this patch sends -webView:didFailLoadWithError:forFrame: to the delegate within  finishedLoadingWithDataSource:, but at that point the loader code in WebMainResourceLoader believes that the load has completed successfully. Shortly after the delegate gets the didFailLoadWithError: callback, it then receives a didFinishLoadForFrame: callback via the normal mechanism. the WebKit API promises to send one or the other of these two callbacks, but not both for the same load.

Given that the PDF code can&apos;t tell if there was an error until the data has been completely loaded, it seems like fixing this would require rearchitecting the loader to some extent to allow the WebDocumentRepresentation to report errors back to the loader after the load has finished.

An alternative approach (perhaps what Darin was thinking about originally) would be to invent a new delegate callback to be used for this kind of post-complete-load error. This would require new code in clients (inc. Safari) to have any effect.

Yet another approach would be to create a PDF document on the fly containing a localized string such as &quot;Couldn&apos;t convert the PostScript file to a PDF file.&quot; (that happens to be the exact string used by Preview). Then in -[WebPDFRepresentation finishedLoadingWithDataSource:], instead of bailing out early in this error case, you&apos;d use this &quot;error PDF&quot; for the PDFDocument that you load in the PDFSubview. If there is such a thing as a zero-length data non-error case, you&apos;d want to distinguish that from the zero-length error case, perhaps with a different message (&quot;This document is empty.&quot;, perhaps).

This 3rd alternative is attractive because it&apos;s self-contained in the WebPDFRepresentation code, and would work well for existing WebKit clients. If you&apos;re interested in pursuing one of the other alternatives, you&apos;ll probably want to discuss it in more detail with either Darin Adler or Maciej Stachowiak, both of whom know more about this loader architecture than I do.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>33430</commentid>
    <comment_count>25</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2006-02-19 19:47:24 -0800</bug_when>
    <thetext>Reassigning to default owner of this component since I don&apos;t have time to work on it now, and my focus is elsewhere (web archive formats).

Per Comment 24, I think this is the best approach:
&gt; An alternative approach (perhaps what Darin was thinking about originally)
&gt; would be to invent a new delegate callback to be used for this kind of
&gt; post-complete-load error. This would require new code in clients (inc. Safari)
&gt; to have any effect.

Displaying a dynamically-composed PDF to announce the error would be user-friendly for interactive users, but not if someone was trying to use WebKit programmatically.  In that case they&apos;d pull their hair out trying to come up with a work-around since they&apos;d see a valid PS file be displayed without knowing whether an error had happened or not.
</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>6357</attachid>
            <date>2006-02-08 21:47:24 -0800</date>
            <delta_ts>2006-02-09 22:49:55 -0800</delta_ts>
            <desc>Patch v1</desc>
            <filename>bug-7145-v1.diff</filename>
            <type>text/plain</type>
            <size>2529</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9XZWJWaWV3L1dlYlBERlJlcHJlc2VudGF0aW9uLm0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViS2l0L1dlYlZpZXcvV2ViUERGUmVwcmVzZW50YXRpb24ubQkocmV2aXNpb24gMTI2ODAp
CisrKyBXZWJLaXQvV2ViVmlldy9XZWJQREZSZXByZXNlbnRhdGlvbi5tCSh3b3JraW5nIGNvcHkp
CkBAIC0yOSwxMCArMjksMTMgQEAKICNpbXBvcnQgPFdlYktpdC9XZWJBc3NlcnRpb25zLmg+CiAj
aW1wb3J0IDxXZWJLaXQvV2ViRGF0YVNvdXJjZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dlYkZyYW1l
Lmg+CisjaW1wb3J0IDxXZWJLaXQvV2ViRnJhbWVMb2FkRGVsZWdhdGUuaD4KICNpbXBvcnQgPFdl
YktpdC9XZWJGcmFtZVZpZXcuaD4KKyNpbXBvcnQgPFdlYktpdC9XZWJLaXRFcnJvcnNQcml2YXRl
Lmg+CiAjaW1wb3J0IDxXZWJLaXQvV2ViTlNPYmplY3RFeHRyYXMuaD4KICNpbXBvcnQgPFdlYktp
dC9XZWJQREZSZXByZXNlbnRhdGlvbi5oPgogI2ltcG9ydCA8V2ViS2l0L1dlYlBERlZpZXcuaD4K
KyNpbXBvcnQgPFdlYktpdC9XZWJWaWV3Lmg+CiAKICNpbXBvcnQgPFBERktpdC9QREZEb2N1bWVu
dC5oPgogI2ltcG9ydCA8UERGS2l0L1BERlZpZXcuaD4KQEAgLTc5LDcgKzgyLDcgQEAKIHsKIH0K
IAotLSAoTlNEYXRhICopY29udmVydFBvc3RTY3JpcHREYXRhU291cmNlVG9QREY6KE5TRGF0YSAq
KWRhdGEKKy0gKE5TRGF0YSAqKWNvbnZlcnRQb3N0U2NyaXB0RGF0YVNvdXJjZVRvUERGOihXZWJE
YXRhU291cmNlICopZGF0YVNvdXJjZQogewogICAgIC8vIENvbnZlcnQgUG9zdFNjcmlwdCB0byBQ
REYgdXNpbmcgUXVhcnR6IDJEIEFQSQogICAgIC8vIGh0dHA6Ly9kZXZlbG9wZXIuYXBwbGUuY29t
L2RvY3VtZW50YXRpb24vR3JhcGhpY3NJbWFnaW5nL0NvbmNlcHR1YWwvZHJhd2luZ3dpdGhxdWFy
dHoyZC9kcV9wc19jb252ZXJ0L2NoYXB0ZXJfMTZfc2VjdGlvbl8xLmh0bWwKQEAgLTg4LDcgKzkx
LDcgQEAKICAgICBDR1BTQ29udmVydGVyUmVmIGNvbnZlcnRlciA9IENHUFNDb252ZXJ0ZXJDcmVh
dGUoMCwgJmNhbGxiYWNrcywgMCk7CiAgICAgQVNTRVJUKGNvbnZlcnRlcik7CiAKLSAgICBDR0Rh
dGFQcm92aWRlclJlZiBwcm92aWRlciA9IENHRGF0YVByb3ZpZGVyQ3JlYXRlV2l0aENGRGF0YSgo
Q0ZEYXRhUmVmKWRhdGEpOworICAgIENHRGF0YVByb3ZpZGVyUmVmIHByb3ZpZGVyID0gQ0dEYXRh
UHJvdmlkZXJDcmVhdGVXaXRoQ0ZEYXRhKChDRkRhdGFSZWYpW2RhdGFTb3VyY2UgZGF0YV0pOwog
ICAgIEFTU0VSVChwcm92aWRlcik7CiAKICAgICBDRk11dGFibGVEYXRhUmVmIHJlc3VsdCA9IENG
RGF0YUNyZWF0ZU11dGFibGUoa0NGQWxsb2NhdG9yRGVmYXVsdCwgMCk7CkBAIC05Nyw4ICsxMDAs
MTIgQEAKICAgICBDR0RhdGFDb25zdW1lclJlZiBjb25zdW1lciA9IENHRGF0YUNvbnN1bWVyQ3Jl
YXRlV2l0aENGRGF0YShyZXN1bHQpOwogICAgIEFTU0VSVChjb25zdW1lcik7CiAKLSAgICAvLyBF
cnJvciBoYW5kbGVkIGJ5IGRldGVjdGluZyB6ZXJvLWxlbmd0aCAncmVzdWx0JyBpbiBjYWxsZXIK
LSAgICBDR1BTQ29udmVydGVyQ29udmVydChjb252ZXJ0ZXIsIHByb3ZpZGVyLCBjb25zdW1lciwg
MCk7CisgICAgaWYgKCFDR1BTQ29udmVydGVyQ29udmVydChjb252ZXJ0ZXIsIHByb3ZpZGVyLCBj
b25zdW1lciwgMCkpIHsKKyAgICAgICAgV2ViRnJhbWUgKndlYkZyYW1lID0gW2RhdGFTb3VyY2Ug
d2ViRnJhbWVdOworICAgICAgICBXZWJWaWV3ICp3ZWJWaWV3ID0gW3dlYkZyYW1lIHdlYlZpZXdd
OworICAgICAgICBOU0Vycm9yICplcnJvciA9IFtOU0Vycm9yIF93ZWJLaXRFcnJvcldpdGhEb21h
aW46V2ViS2l0RXJyb3JEb21haW4gY29kZTpXZWJLaXRFcnJvckNhbm5vdFNob3dVUkwgVVJMOltb
ZGF0YVNvdXJjZSByZXF1ZXN0XSBVUkxdXTsKKyAgICAgICAgW1t3ZWJWaWV3IGZyYW1lTG9hZERl
bGVnYXRlXSB3ZWJWaWV3OndlYlZpZXcgZGlkRmFpbExvYWRXaXRoRXJyb3I6ZXJyb3IgZm9yRnJh
bWU6d2ViRnJhbWVdOworICAgIH0KIAogICAgIENGUmVsZWFzZShjb252ZXJ0ZXIpOwogICAgIENG
UmVsZWFzZShwcm92aWRlcik7CkBAIC0xMTQsNyArMTIxLDcgQEAKICAgICBOU0FycmF5ICpwb3N0
U2NyaXB0TUlNRVR5cGVzID0gW1tzZWxmIGNsYXNzXSBwb3N0U2NyaXB0TUlNRVR5cGVzXTsKICAg
ICBOU1N0cmluZyAqbWltZVR5cGUgPSBbW2RhdGFTb3VyY2UgcmVzcG9uc2VdIE1JTUVUeXBlXTsK
ICAgICBpZiAoW3Bvc3RTY3JpcHRNSU1FVHlwZXMgY29udGFpbnNPYmplY3Q6bWltZVR5cGVdKSB7
Ci0gICAgICAgIGRhdGEgPSBbc2VsZiBjb252ZXJ0UG9zdFNjcmlwdERhdGFTb3VyY2VUb1BERjpk
YXRhXTsKKyAgICAgICAgZGF0YSA9IFtzZWxmIGNvbnZlcnRQb3N0U2NyaXB0RGF0YVNvdXJjZVRv
UERGOmRhdGFTb3VyY2VdOwogICAgICAgICBpZiAoW2RhdGEgbGVuZ3RoXSA9PSAwKQogICAgICAg
ICAgICAgcmV0dXJuOwogICAgIH0K
</data>
<flag name="review"
          id="1558"
          type_id="1"
          status="-"
          setter="sullivan"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>6376</attachid>
            <date>2006-02-09 20:34:10 -0800</date>
            <delta_ts>2006-02-09 20:34:10 -0800</delta_ts>
            <desc>Test case (invalid PS file)</desc>
            <filename>invalid.ps</filename>
            <type>application/postscript</type>
            <size>336</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">JSFQUy1BZG9iZS0yLjAgRVBTRi0xLjIKJSVDcmVhdG9yOiBBZG9iZSBJbGx1c3RyYXRvcihUTSkg
MS4yZDQKJSVGb3I6IE9wZW5XaW5kb3dzIFZlcnNpb24gMgolJVRpdGxlOiB0aWdlci5lcHMKJSVD
cmVhdGlvbkRhdGU6IDQvMTIvOTAgMzoyMCBBTQolJURvY3VtZW50UHJvY1NldHM6IEFkb2JlX0ls
bHVzdHJhdG9yXzEuMmQxIDAgMAolJURvY3VtZW50U3VwcGxpZWRQcm9jU2V0czogQWRvYmVfSWxs
dXN0cmF0b3JfMS4yZDEgMCAwCiUlQm91bmRpbmdCb3g6IDIyIDE3MSA1NjcgNzM4CiUlRW5kQ29t
bWVudHMKCiUlQmVnaW5Qcm9jU2V0OkFkb2JlX0lsbHVzdHJhdG9yXzEuMmQxIDAgMAoK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>6381</attachid>
            <date>2006-02-09 22:49:55 -0800</date>
            <delta_ts>2010-06-10 14:18:23 -0700</delta_ts>
            <desc>Patch v2</desc>
            <filename>bug-7145-v2.diff</filename>
            <type>text/plain</type>
            <size>6017</size>
            <attacher name="David Kilzer (:ddkilzer)">ddkilzer</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L0NoYW5nZUxvZwko
cmV2aXNpb24gMTI3MjcpCisrKyBXZWJLaXQvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0x
LDMgKzEsMTcgQEAKKzIwMDYtMDItMTAgIERhdmlkIEtpbHplciAgPGRka2lsemVyQGtpbHplci5u
ZXQ+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgLSBG
aXggaHR0cDovL2J1Z3ppbGxhLm9wZW5kYXJ3aW4ub3JnL3Nob3dfYnVnLmNnaT9pZD03MTQ1Cisg
ICAgICAgIFJlcG9ydCBlcnJvciBkdXJpbmcgUG9zdFNjcmlwdCBjb252ZXJzaW9uIHZpYSBkZWxl
Z2F0ZQorCisgICAgICAgICogTWlzYy9XZWJLaXRFcnJvcnMubTogQWRkZWQgV2ViS2l0RXJyb3JE
ZXNjcmlwdGlvbkNhbm5vdENvbnZlcnRQb3N0U2NyaXB0RmlsZVRvUERGLgorICAgICAgICAocmVn
aXN0ZXJFcnJvcnMpOiBBZGRlZCBuZXcgZW50cnkgdG8gZGljdGlvbmFyeS4KKyAgICAgICAgKiBN
aXNjL1dlYktpdEVycm9yc1ByaXZhdGUuaDogQWRkZWQgV2ViS2l0RXJyb3JDYW5ub3RDb252ZXJ0
UG9zdFNjcmlwdEZpbGVUb1BERi4KKyAgICAgICAgKiBXZWJWaWV3L1dlYlBERlJlcHJlc2VudGF0
aW9uLm06IEhhbmRsZSBlcnJvciBjb25kaXRpb24gZnJvbSBDR1BTQ29udmVydGVyQ29udmVydCgp
LgorICAgICAgICAoLVtXZWJQREZSZXByZXNlbnRhdGlvbiBjb252ZXJ0UG9zdFNjcmlwdERhdGFT
b3VyY2VUb1BERjpdKTogRGl0dG8uCisgICAgICAgICgtW1dlYlBERlJlcHJlc2VudGF0aW9uIGZp
bmlzaGVkTG9hZGluZ1dpdGhEYXRhU291cmNlOl0pOiBEaXR0by4KKwogMjAwNi0wMi0wOSAgVGlt
IE9tZXJuaWNrICA8dGltb0BhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgVGltIEhh
dGNoZXIuCkluZGV4OiBXZWJLaXQvTWlzYy9XZWJLaXRFcnJvcnNQcml2YXRlLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gV2ViS2l0L01pc2MvV2ViS2l0RXJyb3JzUHJpdmF0ZS5oCShyZXZpc2lvbiAxMjcyNykK
KysrIFdlYktpdC9NaXNjL1dlYktpdEVycm9yc1ByaXZhdGUuaAkod29ya2luZyBjb3B5KQpAQCAt
MjgsNiArMjgsOCBAQAogCiAjaW1wb3J0IDxXZWJLaXQvV2ViS2l0RXJyb3JzLmg+CiAKKyNkZWZp
bmUgV2ViS2l0RXJyb3JDYW5ub3RDb252ZXJ0UG9zdFNjcmlwdEZpbGVUb1BERiAxMDMKKwogI2Rl
ZmluZSBXZWJLaXRFcnJvclBsdWdJbkNhbmNlbGxlZENvbm5lY3Rpb24gMjAzCiAvLyBGSVhNRTog
V2ViS2l0RXJyb3JQbHVnSW5XaWxsSGFuZGxlTG9hZCBpcyB1c2VkIGZvciB0aGUgY2FuY2VsIHdl
IGRvIHRvIHByZXZlbnQgbG9hZGluZyBwbHVnaW4gY29udGVudCB0d2ljZS4gIFNlZSA8cmRhcjov
L3Byb2JsZW0vNDI1ODAwOD4KICNkZWZpbmUgV2ViS2l0RXJyb3JQbHVnSW5XaWxsSGFuZGxlTG9h
ZCAyMDQKSW5kZXg6IFdlYktpdC9NaXNjL1dlYktpdEVycm9ycy5tCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YktpdC9NaXNjL1dlYktpdEVycm9ycy5tCShyZXZpc2lvbiAxMjcyNykKKysrIFdlYktpdC9NaXNj
L1dlYktpdEVycm9ycy5tCSh3b3JraW5nIGNvcHkpCkBAIC00NCw2ICs0NCw3IEBAIE5TU3RyaW5n
ICogY29uc3QgV2ViS2l0RXJyb3JQbHVnSW5QYWdlVVIKICNkZWZpbmUgV2ViS2l0RXJyb3JEZXNj
cmlwdGlvbkNhbm5vdFNob3dNSU1FVHlwZSBVSV9TVFJJTkcoIkNhbm5vdCBzaG93IGNvbnRlbnQg
d2l0aCBzcGVjaWZpZWQgbWltZSB0eXBlIiwgIldlYktpdEVycm9yQ2Fubm90U2hvd01JTUVUeXBl
IGRlc2NyaXB0aW9uIikKICNkZWZpbmUgV2ViS2l0RXJyb3JEZXNjcmlwdGlvbkNhbm5vdFNob3dV
UkwgVUlfU1RSSU5HKCJDYW5ub3Qgc2hvdyBVUkwiLCAiV2ViS2l0RXJyb3JDYW5ub3RTaG93VVJM
IGRlc2NyaXB0aW9uIikKICNkZWZpbmUgV2ViS2l0RXJyb3JEZXNjcmlwdGlvbkZyYW1lTG9hZElu
dGVycnVwdGVkQnlQb2xpY3lDaGFuZ2UgVUlfU1RSSU5HKCJGcmFtZSBsb2FkIGludGVycnVwdGVk
IiwgIldlYktpdEVycm9yRnJhbWVMb2FkSW50ZXJydXB0ZWRCeVBvbGljeUNoYW5nZSBkZXNjcmlw
dGlvbiIpCisjZGVmaW5lIFdlYktpdEVycm9yRGVzY3JpcHRpb25DYW5ub3RDb252ZXJ0UG9zdFNj
cmlwdEZpbGVUb1BERiBVSV9TVFJJTkcoIkNhbm5vdCBjb252ZXJ0IFBvc3RTY3JpcHQgZmlsZSB0
byBQREYiLCAiV2ViS2l0RXJyb3JDYW5ub3RDb252ZXJ0UG9zdFNjcmlwdEZpbGVUb1BERiBkZXNj
cmlwdGlvbiIpCiAKIC8vIFBsdWctaW4gYW5kIGphdmEgZXJyb3JzCiAjZGVmaW5lIFdlYktpdEVy
cm9yRGVzY3JpcHRpb25DYW5ub3RGaW5kUGx1Z2luIFVJX1NUUklORygiQ2Fubm90IGZpbmQgcGx1
Zy1pbiIsICJXZWJLaXRFcnJvckNhbm5vdEZpbmRQbHVnaW4gZGVzY3JpcHRpb24iKQpAQCAtMTQ1
LDYgKzE0Niw3IEBAIHN0YXRpYyB2b2lkIHJlZ2lzdGVyRXJyb3JzKCkKICAgICAgICAgV2ViS2l0
RXJyb3JEZXNjcmlwdGlvbkNhbm5vdFNob3dNSU1FVHlwZSwgCQlbTlNOdW1iZXIgbnVtYmVyV2l0
aEludDogV2ViS2l0RXJyb3JDYW5ub3RTaG93TUlNRVR5cGVdLAogICAgICAgICBXZWJLaXRFcnJv
ckRlc2NyaXB0aW9uQ2Fubm90U2hvd1VSTCwgCQkJW05TTnVtYmVyIG51bWJlcldpdGhJbnQ6IFdl
YktpdEVycm9yQ2Fubm90U2hvd1VSTF0sCiAgICAgICAgIFdlYktpdEVycm9yRGVzY3JpcHRpb25G
cmFtZUxvYWRJbnRlcnJ1cHRlZEJ5UG9saWN5Q2hhbmdlLFtOU051bWJlciBudW1iZXJXaXRoSW50
OiBXZWJLaXRFcnJvckZyYW1lTG9hZEludGVycnVwdGVkQnlQb2xpY3lDaGFuZ2VdLAorICAgICAg
ICBXZWJLaXRFcnJvckRlc2NyaXB0aW9uQ2Fubm90Q29udmVydFBvc3RTY3JpcHRGaWxlVG9QREYs
IFtOU051bWJlciBudW1iZXJXaXRoSW50OiBXZWJLaXRFcnJvckNhbm5vdENvbnZlcnRQb3N0U2Ny
aXB0RmlsZVRvUERGXSwKIAogICAgICAgICAvLyBQbHVnLWluIGFuZCBqYXZhIGVycm9ycwogICAg
ICAgICBXZWJLaXRFcnJvckRlc2NyaXB0aW9uQ2Fubm90RmluZFBsdWdpbiwJCVtOU051bWJlciBu
dW1iZXJXaXRoSW50OiBXZWJLaXRFcnJvckNhbm5vdEZpbmRQbHVnSW5dLApJbmRleDogV2ViS2l0
L1dlYlZpZXcvV2ViUERGUmVwcmVzZW50YXRpb24ubQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvV2Vi
Vmlldy9XZWJQREZSZXByZXNlbnRhdGlvbi5tCShyZXZpc2lvbiAxMjcyNykKKysrIFdlYktpdC9X
ZWJWaWV3L1dlYlBERlJlcHJlc2VudGF0aW9uLm0JKHdvcmtpbmcgY29weSkKQEAgLTI5LDEwICsy
OSwxMyBAQAogI2ltcG9ydCA8V2ViS2l0L1dlYkFzc2VydGlvbnMuaD4KICNpbXBvcnQgPFdlYktp
dC9XZWJEYXRhU291cmNlLmg+CiAjaW1wb3J0IDxXZWJLaXQvV2ViRnJhbWUuaD4KKyNpbXBvcnQg
PFdlYktpdC9XZWJGcmFtZUxvYWREZWxlZ2F0ZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dlYkZyYW1l
Vmlldy5oPgorI2ltcG9ydCA8V2ViS2l0L1dlYktpdEVycm9yc1ByaXZhdGUuaD4KICNpbXBvcnQg
PFdlYktpdC9XZWJOU09iamVjdEV4dHJhcy5oPgogI2ltcG9ydCA8V2ViS2l0L1dlYlBERlJlcHJl
c2VudGF0aW9uLmg+CiAjaW1wb3J0IDxXZWJLaXQvV2ViUERGVmlldy5oPgorI2ltcG9ydCA8V2Vi
S2l0L1dlYlZpZXcuaD4KIAogI2ltcG9ydCA8UERGS2l0L1BERkRvY3VtZW50Lmg+CiAjaW1wb3J0
IDxQREZLaXQvUERGVmlldy5oPgpAQCAtNzksMTYgKzgyLDE2IEBACiB7CiB9CiAKLS0gKE5TRGF0
YSAqKWNvbnZlcnRQb3N0U2NyaXB0RGF0YVNvdXJjZVRvUERGOihOU0RhdGEgKilkYXRhCistIChO
U0RhdGEgKiljb252ZXJ0UG9zdFNjcmlwdERhdGFTb3VyY2VUb1BERjooV2ViRGF0YVNvdXJjZSAq
KWRhdGFTb3VyY2UKIHsKICAgICAvLyBDb252ZXJ0IFBvc3RTY3JpcHQgdG8gUERGIHVzaW5nIFF1
YXJ0eiAyRCBBUEkKICAgICAvLyBodHRwOi8vZGV2ZWxvcGVyLmFwcGxlLmNvbS9kb2N1bWVudGF0
aW9uL0dyYXBoaWNzSW1hZ2luZy9Db25jZXB0dWFsL2RyYXdpbmd3aXRocXVhcnR6MmQvZHFfcHNf
Y29udmVydC9jaGFwdGVyXzE2X3NlY3Rpb25fMS5odG1sCiAKLSAgICBDR1BTQ29udmVydGVyQ2Fs
bGJhY2tzIGNhbGxiYWNrcyA9IHsgMCwgMCwgMCwgMCwgMCwgMCwgMCwgMCB9OyAgICAKKyAgICBD
R1BTQ29udmVydGVyQ2FsbGJhY2tzIGNhbGxiYWNrcyA9IHsgMCwgMCwgMCwgMCwgMCwgMCwgMCwg
MCB9OwogICAgIENHUFNDb252ZXJ0ZXJSZWYgY29udmVydGVyID0gQ0dQU0NvbnZlcnRlckNyZWF0
ZSgwLCAmY2FsbGJhY2tzLCAwKTsKICAgICBBU1NFUlQoY29udmVydGVyKTsKIAotICAgIENHRGF0
YVByb3ZpZGVyUmVmIHByb3ZpZGVyID0gQ0dEYXRhUHJvdmlkZXJDcmVhdGVXaXRoQ0ZEYXRhKChD
RkRhdGFSZWYpZGF0YSk7CisgICAgQ0dEYXRhUHJvdmlkZXJSZWYgcHJvdmlkZXIgPSBDR0RhdGFQ
cm92aWRlckNyZWF0ZVdpdGhDRkRhdGEoKENGRGF0YVJlZilbZGF0YVNvdXJjZSBkYXRhXSk7CiAg
ICAgQVNTRVJUKHByb3ZpZGVyKTsKIAogICAgIENGTXV0YWJsZURhdGFSZWYgcmVzdWx0ID0gQ0ZE
YXRhQ3JlYXRlTXV0YWJsZShrQ0ZBbGxvY2F0b3JEZWZhdWx0LCAwKTsKQEAgLTk3LDggKzEwMCwx
NCBAQAogICAgIENHRGF0YUNvbnN1bWVyUmVmIGNvbnN1bWVyID0gQ0dEYXRhQ29uc3VtZXJDcmVh
dGVXaXRoQ0ZEYXRhKHJlc3VsdCk7CiAgICAgQVNTRVJUKGNvbnN1bWVyKTsKIAotICAgIC8vIEVy
cm9yIGhhbmRsZWQgYnkgZGV0ZWN0aW5nIHplcm8tbGVuZ3RoICdyZXN1bHQnIGluIGNhbGxlcgot
ICAgIENHUFNDb252ZXJ0ZXJDb252ZXJ0KGNvbnZlcnRlciwgcHJvdmlkZXIsIGNvbnN1bWVyLCAw
KTsKKyAgICBpZiAoIUNHUFNDb252ZXJ0ZXJDb252ZXJ0KGNvbnZlcnRlciwgcHJvdmlkZXIsIGNv
bnN1bWVyLCAwKSkgeworICAgICAgICBXZWJGcmFtZSAqd2ViRnJhbWUgPSBbZGF0YVNvdXJjZSB3
ZWJGcmFtZV07CisgICAgICAgIFdlYlZpZXcgKndlYlZpZXcgPSBbd2ViRnJhbWUgd2ViVmlld107
CisgICAgICAgIE5TRXJyb3IgKmVycm9yID0gW05TRXJyb3IgX3dlYktpdEVycm9yV2l0aERvbWFp
bjpXZWJLaXRFcnJvckRvbWFpbgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIGNvZGU6V2ViS2l0RXJyb3JDYW5ub3RDb252ZXJ0UG9zdFNjcmlwdEZp
bGVUb1BERgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBVUkw6W1tkYXRhU291cmNlIHJlcXVlc3RdIFVSTF1dOworICAgICAgICBbW3dlYlZpZXcg
ZnJhbWVMb2FkRGVsZWdhdGVdIHdlYlZpZXc6d2ViVmlldyBkaWRGYWlsTG9hZFdpdGhFcnJvcjpl
cnJvciBmb3JGcmFtZTp3ZWJGcmFtZV07CisgICAgfQogCiAgICAgQ0ZSZWxlYXNlKGNvbnZlcnRl
cik7CiAgICAgQ0ZSZWxlYXNlKHByb3ZpZGVyKTsKQEAgLTExNCw3ICsxMjMsNyBAQAogICAgIE5T
QXJyYXkgKnBvc3RTY3JpcHRNSU1FVHlwZXMgPSBbW3NlbGYgY2xhc3NdIHBvc3RTY3JpcHRNSU1F
VHlwZXNdOwogICAgIE5TU3RyaW5nICptaW1lVHlwZSA9IFtbZGF0YVNvdXJjZSByZXNwb25zZV0g
TUlNRVR5cGVdOwogICAgIGlmIChbcG9zdFNjcmlwdE1JTUVUeXBlcyBjb250YWluc09iamVjdDpt
aW1lVHlwZV0pIHsKLSAgICAgICAgZGF0YSA9IFtzZWxmIGNvbnZlcnRQb3N0U2NyaXB0RGF0YVNv
dXJjZVRvUERGOmRhdGFdOworICAgICAgICBkYXRhID0gW3NlbGYgY29udmVydFBvc3RTY3JpcHRE
YXRhU291cmNlVG9QREY6ZGF0YVNvdXJjZV07CiAgICAgICAgIGlmIChbZGF0YSBsZW5ndGhdID09
IDApCiAgICAgICAgICAgICByZXR1cm47CiAgICAgfQo=
</data>
<flag name="review"
          id="1573"
          type_id="1"
          status="-"
          setter="sullivan"
    />
          </attachment>
      

    </bug>

</bugzilla>