<?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>32410</bug_id>
          
          <creation_ts>2009-12-11 00:00:30 -0800</creation_ts>
          <short_desc>[Qt] Allow to use WebCore image decoders</short_desc>
          <delta_ts>2012-04-12 04:39:33 -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>Images</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P5</priority>
          <bug_severity>Minor</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>79414</dependson>
          <blocked>80398</blocked>
    
    <blocked>80400</blocked>
    
    <blocked>83764</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Holger Freyther">zecke</reporter>
          <assigned_to name="Zoltan Horvath">zoltan</assigned_to>
          <cc>benjamin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>enne</cc>
    
    <cc>hausmann</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>markus</cc>
    
    <cc>noel.gordon</cc>
    
    <cc>s.mathur</cc>
    
    <cc>vestbo</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yongjun.zhang</cc>
    
    <cc>zoltan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>170650</commentid>
    <comment_count>0</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-12-11 00:00:30 -0800</bug_when>
    <thetext>For the Symbian and other ports the WebCore Image Decoders look like an interesting choiche. We avoid using the QBuffer, we get the downsampling, we more directly pick the decoder...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171324</commentid>
    <comment_count>1</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-12-14 02:49:22 -0800</bug_when>
    <thetext>I landed the usage of setQuality(49) in r52086.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171326</commentid>
    <comment_count>2</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-12-14 02:50:24 -0800</bug_when>
    <thetext>That is really not my day... forget the comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171339</commentid>
    <comment_count>3</comment_count>
      <attachid>44785</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-12-14 04:11:43 -0800</bug_when>
    <thetext>Created attachment 44785
Patch to use WebCore image decoders...

This is my current version of the patch. It needs to be completed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171361</commentid>
    <comment_count>4</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-12-14 05:51:26 -0800</bug_when>
    <thetext>The crash is due one thing we can do in the pure Qt case...

In RGBA32Buffer::asNewNativeImage we throw the QImage away... with progressive loading we are doing this while decoding... the fix should be to...

a.) guard that with the ENABLE/USE macro..
b.) Check the state of the frame and throw it away once it has been decoded
c.) Just remove it and hope someone is calling ::clear...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>171675</commentid>
    <comment_count>5</comment_count>
      <attachid>44838</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-12-14 21:02:04 -0800</bug_when>
    <thetext>Created attachment 44838
Patch to use WebCore image decoder

This is fixing the crash. If someone wants to continue working on it and test changes please go ahead. The things that need to be changed are documented in the commit message.

To be able to land the patch we will need to:
       - Implement locking of the RGBA32Buffer from the GIFImageDecoder. So we can still throw away the QImage when it will not be used for decoding anymore.
       - Remove the ::scanLine call from getAddr as this will go through a detach.

Does anyone volunteer to carry this forward?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>175660</commentid>
    <comment_count>6</comment_count>
    <who name="Yongjun Zhang">yongjun.zhang</who>
    <bug_when>2009-12-29 11:35:41 -0800</bug_when>
    <thetext>Hi Holger, I can take this over since I have already started looking into using webcore image decoders in Symbian.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193357</commentid>
    <comment_count>7</comment_count>
    <who name="Markus Goetz">markus</who>
    <bug_when>2010-02-24 07:58:57 -0800</bug_when>
    <thetext>Hi,
I was looking into Qt image decoders just for fun. What is the current state of your work on it, Yongjun?

Markus</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193713</commentid>
    <comment_count>8</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-02-25 07:04:08 -0800</bug_when>
    <thetext>One more issue... The current RGBA32Buffer class will call QImage::detach() for each pixel... So it would make sense to keep the image in a Vector like the others decoders are doing it too (this would also make us use fastMalloc for the imagedata), or at least keep the result of QImage::bits somewhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>193720</commentid>
    <comment_count>9</comment_count>
    <who name="Yongjun Zhang">yongjun.zhang</who>
    <bug_when>2010-02-25 07:22:32 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; One more issue... The current RGBA32Buffer class will call QImage::detach() for
&gt; each pixel... So it would make sense to keep the image in a Vector like the
&gt; others decoders are doing it too (this would also make us use fastMalloc for
&gt; the imagedata), or at least keep the result of QImage::bits somewhere.

(In reply to comment #7)
&gt; Hi,
&gt; I was looking into Qt image decoders just for fun. What is the current state of
&gt; your work on it, Yongjun?
&gt; 
&gt; Markus

Hi Markus,

I had worked on it for a while but was dragged to other more urgent tasks.  I have a patch which fixed some issues Holger mentioned.  However I didn&apos;t get time to benchmark my patch against the original code.  It would be great if you can help with that.

I will upload my patch later.

thanks,
Yongjun</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194986</commentid>
    <comment_count>10</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-03-02 02:05:26 -0800</bug_when>
    <thetext>It is too early.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>194987</commentid>
    <comment_count>11</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2010-03-02 02:05:47 -0800</bug_when>
    <thetext>It is too early.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>311358</commentid>
    <comment_count>12</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2010-11-19 04:44:03 -0800</bug_when>
    <thetext>Yongjun, do you plan to finish this? Otherwise I think the task can be closed until someone want to work on it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>373985</commentid>
    <comment_count>13</comment_count>
    <who name="Siddharth Mathur">s.mathur</who>
    <bug_when>2011-03-26 14:02:10 -0700</bug_when>
    <thetext>Closing old bug. Please reopen if need resurfaces and someone starts work on a patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560228</commentid>
    <comment_count>14</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-20 07:38:28 -0800</bug_when>
    <thetext>I reopened this bug because there were no real objections on the qtwebkit mailing list against switching to WebCore Imagedecoders: https://lists.webkit.org/pipermail/webkit-qt/2012-February/002470.html)

In that cases where WebCore does not supports the image format we&apos;ll try to fallback to QtImageDecoders.

I assign myself to the bug and I will send patches on this week.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560309</commentid>
    <comment_count>15</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2012-02-20 11:51:01 -0800</bug_when>
    <thetext>&gt; In that cases where WebCore does not supports the image format we&apos;ll try to fallback to QtImageDecoders.

You might not always want that. QtImageDecoders are have more security issues, and ideally you want to avoid some of them (e.g. TIFF and SVG).

See https://bugs.webkit.org/show_bug.cgi?id=38554</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560719</commentid>
    <comment_count>16</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-21 00:31:11 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; &gt; In that cases where WebCore does not supports the image format we&apos;ll try to fallback to QtImageDecoders.
&gt; 
&gt; You might not always want that. QtImageDecoders are have more security issues, and ideally you want to avoid some of them (e.g. TIFF and SVG).
&gt; 
&gt; See https://bugs.webkit.org/show_bug.cgi?id=38554

Thanks for pointing me to that bug!

As I see now, we should change to WebCore imagedecoders, with an ENABLE macro guarded fallback to QtImageDecoders and when we solved the security issues we can remove the macros and use the fallback as a default behavior.

What is your opinion about this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>560804</commentid>
    <comment_count>17</comment_count>
    <who name="Markus Goetz">markus</who>
    <bug_when>2012-02-21 04:17:46 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; As I see now, we should change to WebCore imagedecoders, with an ENABLE macro guarded fallback to QtImageDecoders and when we solved the security issues we can remove the macros and use the fallback as a default behavior.

In general I guess it makes sense to prefer WebCore decoders as they are hopefully more secure and more optimized for the web case.
I think Qt decoders should still be used as fallback, applications might rely on that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>561098</commentid>
    <comment_count>18</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-21 11:48:27 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; In general I guess it makes sense to prefer WebCore decoders as they are hopefully more secure and more optimized for the web case.
&gt; I think Qt decoders should still be used as fallback, applications might rely on that.

Exactly, this is what I want to do. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>561118</commentid>
    <comment_count>19</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2012-02-21 12:09:21 -0800</bug_when>
    <thetext>&gt; As I see now, we should change to WebCore imagedecoders, with an ENABLE macro guarded fallback to QtImageDecoders and when we solved the security issues we can remove the macros and use the fallback as a default behavior.

Sounds like a good plan.

If you have a browser based on the same library, you might want to keep a runtime check to avoid Qt image decoders for the browser.
There are nasty stuff in there, and Qt does not have a security team to verify that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>561793</commentid>
    <comment_count>20</comment_count>
      <attachid>128165</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-22 02:46:39 -0800</bug_when>
    <thetext>Created attachment 128165
Allow to compile WebCore imagedecoders

This patch adds ENABLE guards around QtImageDecoders only, but I set it to use it by default, so there are no behavior change. If somebody wants to test WebCore imgdecoders then just pass ENABLE_QT_IMAGE_DECODER=0 to the build.

The next step would be to put the fallback to QtImageDecoders into WebCore and set WebCore ImageDecoders to default. In this case compiling of QtImageDecoders will be disabled until we fix security issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>562210</commentid>
    <comment_count>21</comment_count>
      <attachid>128165</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-02-22 11:59:17 -0800</bug_when>
    <thetext>Comment on attachment 128165
Allow to compile WebCore imagedecoders

View in context: https://bugs.webkit.org/attachment.cgi?id=128165&amp;action=review

Looks good in general! I like the minimalistic approach. A few nitpicks below :)

&gt; Source/WebCore/WebCore.pri:212
&gt; +        $$SOURCE_DIR/platform/image-decoders/webp

Doesn&apos;t webp require another library? (just curious, don&apos;t have the sources here right now)

&gt; Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp:106
&gt; +void error_exit(j_common_ptr cinfo) NO_RETURN;

Why do we need this and the other ports don&apos;t? Do we enable a compiler warning the others don&apos;t see? Is it because of -Werror? Please explain in the ChangeLog :)

&gt; Source/WebCore/platform/image-decoders/qt/ImageFrameQt.cpp:43
&gt; +            fmt = QImage::Format_RGB32;

The indentation of this block looks broken :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>562999</commentid>
    <comment_count>22</comment_count>
      <attachid>128446</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-23 02:51:38 -0800</bug_when>
    <thetext>Created attachment 128446
Allow to use WebCore image decoders

(In reply to comment #21)

&gt; &gt; Source/WebCore/WebCore.pri:212
&gt; &gt; +        $$SOURCE_DIR/platform/image-decoders/webp
&gt; 
&gt; Doesn&apos;t webp require another library? (just curious, don&apos;t have the sources here right now)

Yeap, you are right. You need installed libwebp on the system. So I put it into macro guards.
 
&gt; &gt; Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp:106
&gt; &gt; +void error_exit(j_common_ptr cinfo) NO_RETURN;
&gt; 
&gt; Why do we need this and the other ports don&apos;t? Do we enable a compiler warning the others don&apos;t see? Is it because of -Werror? Please explain in the ChangeLog :)

I modified the changelog! :)

&gt; &gt; Source/WebCore/platform/image-decoders/qt/ImageFrameQt.cpp:43
&gt; &gt; +            fmt = QImage::Format_RGB32;
&gt; 
&gt; The indentation of this block looks broken :)

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563010</commentid>
    <comment_count>23</comment_count>
      <attachid>128446</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-02-23 03:41:38 -0800</bug_when>
    <thetext>Comment on attachment 128446
Allow to use WebCore image decoders

View in context: https://bugs.webkit.org/attachment.cgi?id=128446&amp;action=review

r=me.

&gt; Source/WebCore/WebCore.pri:214
&gt; +    LIBS += -ljpeg -lpng12

It would be nice to replace the direct linkage with qmake config tests that print out a message or abort. That can be done in a follow-up patch of course :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563564</commentid>
    <comment_count>24</comment_count>
      <attachid>128446</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-23 15:37:30 -0800</bug_when>
    <thetext>Comment on attachment 128446
Allow to use WebCore image decoders

Clearing flags on attachment: 128446

Committed r108685: &lt;http://trac.webkit.org/changeset/108685&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563565</commentid>
    <comment_count>25</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-02-23 15:37:36 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>563622</commentid>
    <comment_count>26</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-02-23 16:06:14 -0800</bug_when>
    <thetext>Rolled out in http://trac.webkit.org/changeset/108692

Broke Chrome compile on all platforms.

From http://build.chromium.org/p/chromium.webkit/builders/Win%20Builder/builds/17066/steps/compile/logs/stdio_html:
--------------------Configuration: webcore_platform - Release Win32-----------------------
Compiling...
PNGImageDecoder.cpp
JPEGImageDecoder.cpp
..\platform\image-decoders\png\PNGImageDecoder.cpp(67) : error C2144: syntax error : &apos;int&apos; should be preceded by &apos;;&apos;
..\platform\image-decoders\png\PNGImageDecoder.cpp(67) : warning C4091: &apos;__declspec(noreturn)&apos; : ignored on left of &apos;int&apos; when no variable is declared
..\platform\image-decoders\jpeg\JPEGImageDecoder.cpp(106) : error C2144: syntax error : &apos;int&apos; should be preceded by &apos;;&apos;
..\platform\image-decoders\jpeg\JPEGImageDecoder.cpp(106) : warning C4091: &apos;__declspec(noreturn)&apos; : ignored on left of &apos;int&apos; when no variable is declared
Build log was saved at &quot;file://c:\b\build\slave\win-latest-rel\build\src\build\Release\obj\webcore_platform\BuildLog.htm&quot;
webcore_platform - 2 error(s), 2 warning(s)

From http://build.chromium.org/p/chromium.webkit/builders/Mac%20Builder%20%28dbg%29/builds/4713/steps/compile/logs/stdio:

/b/build/slave/Mac_Builder__dbg_/build/src/third_party/WebKit/Source/WebCore/WebCore.gyp/../platform/image-decoders/jpeg/JPEGImageDecoder.cpp:406:1:error: function declared &apos;noreturn&apos; should not return [-Werror,-Winvalid-noreturn]
}
^
1 error generated.
/b/build/slave/Mac_Builder__dbg_/build/src/third_party/WebKit/Source/WebCore/WebCore.gyp/../../../../../xcodebuild/WebCore.build/Debug/webcore_platform.build/Objects-normal/i386/PNGImageDecoder.o
/b/build/slave/Mac_Builder__dbg_/build/src/third_party/WebKit/Source/WebCore/WebCore.gyp/../platform/image-decoders/png/PNGImageDecoder.cpp:71:1:error: function declared &apos;noreturn&apos; should not return [-Werror,-Winvalid-noreturn]
}
^
1 error generated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564082</commentid>
    <comment_count>27</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2012-02-24 01:43:16 -0800</bug_when>
    <thetext>Attachment 128446 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp:106:  error_exit is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Source/WebCore/platform/image-decoders/png/PNGImageDecoder.cpp:67:  The parameter name &quot;png&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 2 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564151</commentid>
    <comment_count>28</comment_count>
      <attachid>128697</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-24 03:04:08 -0800</bug_when>
    <thetext>Created attachment 128697
proposed patch - the change will not affect on other ports

(In reply to comment #23)
&gt; &gt; Source/WebCore/WebCore.pri:214
&gt; &gt; +    LIBS += -ljpeg -lpng12
&gt; 
&gt; It would be nice to replace the direct linkage with qmake config tests that print out a message or abort. That can be done in a follow-up patch of course :)

Okay. I prefer to make it in a separate patch.

(In reply to comment #26)
&gt; Rolled out in http://trac.webkit.org/changeset/108692

Thank you!

I put extra guards into the change to not break other ports.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564153</commentid>
    <comment_count>29</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2012-02-24 03:06:23 -0800</bug_when>
    <thetext>Attachment 128697 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp:107:  error_exit is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp:109:  error_exit is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Total errors found: 2 in 11 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564157</commentid>
    <comment_count>30</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-24 03:16:45 -0800</bug_when>
    <thetext>(In reply to comment #29)
&gt; Attachment 128697 [details] did not pass style-queue:
&gt; 
&gt; Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
&gt; Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp:107:  error_exit is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
&gt; Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp:109:  error_exit is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
&gt; Total errors found: 2 in 11 files
&gt; 
&gt; 
&gt; If any of these errors are false positives, please file a bug against check-webkit-style.
This patch is not about JPEGImageDecoder.cpp refactoring. Functions in JPEGImageDecoder.cpp should be renamed to fit to the guidelines, but that is not a goal of this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564253</commentid>
    <comment_count>31</comment_count>
      <attachid>128697</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-02-24 05:56:39 -0800</bug_when>
    <thetext>Comment on attachment 128697
proposed patch - the change will not affect on other ports

View in context: https://bugs.webkit.org/attachment.cgi?id=128697&amp;action=review

&gt;&gt; Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp:109
&gt;&gt; +void error_exit(j_common_ptr cinfo) NO_RETURN;
&gt; 
&gt; error_exit is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]

Did you intend to remove the NO_RETURN in this branch perhaps?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564257</commentid>
    <comment_count>32</comment_count>
      <attachid>128722</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-24 06:03:36 -0800</bug_when>
    <thetext>Created attachment 128722
proposed patch

(In reply to comment #31)
&gt; (From update of attachment 128697 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=128697&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp:109
&gt; &gt;&gt; +void error_exit(j_common_ptr cinfo) NO_RETURN;
&gt; &gt; 
&gt; &gt; error_exit is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
&gt; 
&gt; Did you intend to remove the NO_RETURN in this branch perhaps?

Ups. Sorry. I removed it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564262</commentid>
    <comment_count>33</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2012-02-24 06:07:19 -0800</bug_when>
    <thetext>Attachment 128722 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/platform/image-decoders/jpeg/JPEGImageDecoder.cpp:107:  error_exit is incorrectly named. Don&apos;t use underscores in your identifier names.  [readability/naming] [4]
Total errors found: 1 in 11 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564268</commentid>
    <comment_count>34</comment_count>
      <attachid>128722</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-02-24 06:10:30 -0800</bug_when>
    <thetext>Comment on attachment 128722
proposed patch

Alright, the EWS was green on the earlier patch, this one just fixes the NORETURN in the #else case. Let&apos;s give it a shot :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564272</commentid>
    <comment_count>35</comment_count>
      <attachid>128722</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-24 06:17:51 -0800</bug_when>
    <thetext>Comment on attachment 128722
proposed patch

Thanks for the review. I&apos;m going to land it by hand.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564296</commentid>
    <comment_count>36</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-24 06:49:54 -0800</bug_when>
    <thetext>(In reply to comment #35)
&gt; (From update of attachment 128722 [details])
&gt; Thanks for the review. I&apos;m going to land it by hand.

Landed in:
http://trac.webkit.org/changeset/108792</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564886</commentid>
    <comment_count>37</comment_count>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-02-24 23:54:34 -0800</bug_when>
    <thetext>Source/WebCore/platform/image-decoders/ImageDecoder.cpp

+#if USE(WEBP)
+#include &quot;WEBPImageDecoder.h&quot;
+#endif

Needed?  WEBPImageDecoder.h internally checks for USE(WEBP) right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>564981</commentid>
    <comment_count>38</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-25 10:26:30 -0800</bug_when>
    <thetext>(In reply to comment #37)
&gt; Source/WebCore/platform/image-decoders/ImageDecoder.cpp
&gt; 
&gt; +#if USE(WEBP)
&gt; +#include &quot;WEBPImageDecoder.h&quot;
&gt; +#endif
&gt; 
&gt; Needed?  WEBPImageDecoder.h internally checks for USE(WEBP) right?

Yeap, it checks. But if I didn&apos;t put into these guards then we needed to add the directory of this file to the includepath pointlessly. 
I prefer this straightforward way. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>565538</commentid>
    <comment_count>39</comment_count>
      <attachid>128722</attachid>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2012-02-27 03:10:16 -0800</bug_when>
    <thetext>Comment on attachment 128722
proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=128722&amp;action=review

&gt; Source/WebCore/ChangeLog:8
&gt; +        Add ENABLE(QT_IMAGE_DECODER) guards around Qt imagedecoders and set it to default.
&gt; +        By passing ENABLE_QT_IMAGE_DECODER=0 define to the build system, WebKit will build
&gt; +        with WebCore&apos;s imagedecoders.

For the future, this should have been a USE() macro, not an ENABLE() macro, which is used primarily for web-facing features. From Platform.h:

USE() - use a particular third-party library or optional OS service 
ENABLE() - turn on a specific feature of WebKit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>565546</commentid>
    <comment_count>40</comment_count>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2012-02-27 03:30:47 -0800</bug_when>
    <thetext>(In reply to comment #39)
&gt; (From update of attachment 128722 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=128722&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:8
&gt; &gt; +        Add ENABLE(QT_IMAGE_DECODER) guards around Qt imagedecoders and set it to default.
&gt; &gt; +        By passing ENABLE_QT_IMAGE_DECODER=0 define to the build system, WebKit will build
&gt; &gt; +        with WebCore&apos;s imagedecoders.
&gt; 
&gt; For the future, this should have been a USE() macro, not an ENABLE() macro, which is used primarily for web-facing features. From Platform.h:
&gt; 
&gt; USE() - use a particular third-party library or optional OS service 
&gt; ENABLE() - turn on a specific feature of WebKit

Renamed in r108981</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>565635</commentid>
    <comment_count>41</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-02-27 07:16:02 -0800</bug_when>
    <thetext>(In reply to comment #40)

&gt; Renamed in r108981

Thank you!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571672</commentid>
    <comment_count>42</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-03-06 02:07:56 -0800</bug_when>
    <thetext>I close this bug, because patches are landed, so you are allowed to compile with WebCore&apos;s imagedecoders.

For tracking the switching I opened a new bug: bug #80400

(In reply to comment #23)
&gt; It would be nice to replace the direct linkage with qmake config tests that print out a message or abort. That can be done in a follow-up patch of course :)

For this I opened a new bug: bug #80398</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600135</commentid>
    <comment_count>43</comment_count>
      <attachid>128722</attachid>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-04-11 01:46:32 -0700</bug_when>
    <thetext>Comment on attachment 128722
proposed patch

View in context: https://bugs.webkit.org/attachment.cgi?id=128722&amp;action=review

&gt; Source/WebCore/platform/MIMETypeRegistry.cpp:294
&gt;      for (int i = 0; i &lt; formats.size(); ++i) {

Zoltan a question: if/when QT_IMAGE_DECODER is enabled, this part of the change appears to break image encoding on the &lt;canvas&gt; element. QImageWriter is for used for encoding images. I don&apos;t think ENABLE(QT_IMAGE_DECODER) should change that.  Reading the code, if you enable the flag, the SupportedImageMIMETypesForEncoding registry would be empty on the QT port, right?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>600986</commentid>
    <comment_count>44</comment_count>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-04-12 01:21:28 -0700</bug_when>
    <thetext>meant: &quot;if/when QT_IMAGE_DECODER is disabled ...&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>601008</commentid>
    <comment_count>45</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-04-12 01:42:34 -0700</bug_when>
    <thetext>(In reply to comment #44)
&gt; meant: &quot;if/when QT_IMAGE_DECODER is disabled ...&quot;

Hmm. I think QImageDecoder should not do anything with canvas, but I&apos;m going to check this.

(In reply to comment #43)
&gt; (From update of attachment 128722 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=128722&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/MIMETypeRegistry.cpp:294
&gt; &gt;      for (int i = 0; i &lt; formats.size(); ++i) {
&gt; 
&gt; Zoltan a question: if/when QT_IMAGE_DECODER is enabled, this part of the change appears to break image encoding on the &lt;canvas&gt; element. QImageWriter is for used for encoding images. I don&apos;t think ENABLE(QT_IMAGE_DECODER) should change that.  Reading the code, if you enable the flag, the SupportedImageMIMETypesForEncoding registry would be empty on the QT port, right?

We use QImageReader for encoding images. :)

It would not be empty, check the #else part from Source/WebCore/platform/MIMETypeRegistry.cpp:246.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>601034</commentid>
    <comment_count>46</comment_count>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-04-12 02:29:04 -0700</bug_when>
    <thetext>(In reply to comment #45)
&gt; (In reply to comment #44)
&gt; &gt; meant: &quot;if/when QT_IMAGE_DECODER is disabled ...&quot;
&gt; 
&gt; Hmm. I think QImageDecoder should not do anything with canvas, but I&apos;m going to check this.
&gt;
&gt; (In reply to comment #43)
&gt; &gt; (From update of attachment 128722 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=128722&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebCore/platform/MIMETypeRegistry.cpp:294
&gt; &gt; &gt;      for (int i = 0; i &lt; formats.size(); ++i) {
&gt; &gt; 
&gt; &gt; Zoltan a question: if/when QT_IMAGE_DECODER is enabled, this part of the change appears to break image encoding on the &lt;canvas&gt; element. QImageWriter is for used for encoding images. I don&apos;t think ENABLE(QT_IMAGE_DECODER) should change that.  Reading the code, if you enable the flag, the SupportedImageMIMETypesForEncoding registry would be empty on the QT port, right?
&gt; 
&gt; We use QImageReader for encoding images. :)

Hmm? QImageWriter is in the comment I recently found in the &lt;canvas&gt;.toDataURL image encoder.  I think QImageReader only decodes images. 
   http://trac.webkit.org/browser/trunk/Source/WebCore/platform/graphics/qt/ImageBufferQt.cpp#L398

 
&gt; It would not be empty, check the #else part from Source/WebCore/platform/MIMETypeRegistry.cpp:246.

Sorry, I was not talking about line 246.  From the review tool, it&apos;s line 294.  As of today, it&apos;s http://trac.webkit.org/browser/trunk/Source/WebCore/platform/MIMETypeRegistry.cpp#L290</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>601046</commentid>
    <comment_count>47</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2012-04-12 02:59:02 -0700</bug_when>
    <thetext>(In reply to comment #46)
&gt; (In reply to comment #45)
&gt; &gt; (In reply to comment #44)
&gt; &gt; &gt; meant: &quot;if/when QT_IMAGE_DECODER is disabled ...&quot;
&gt; &gt; 
&gt; &gt; Hmm. I think QImageDecoder should not do anything with canvas, but I&apos;m going to check this.
&gt; &gt;
&gt; &gt; (In reply to comment #43)
&gt; &gt; &gt; (From update of attachment 128722 [details] [details] [details])
&gt; &gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=128722&amp;action=review
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Source/WebCore/platform/MIMETypeRegistry.cpp:294
&gt; &gt; &gt; &gt;      for (int i = 0; i &lt; formats.size(); ++i) {
&gt; &gt; &gt; 
&gt; &gt; &gt; Zoltan a question: if/when QT_IMAGE_DECODER is enabled, this part of the change appears to break image encoding on the &lt;canvas&gt; element. QImageWriter is for used for encoding images. I don&apos;t think ENABLE(QT_IMAGE_DECODER) should change that.  Reading the code, if you enable the flag, the SupportedImageMIMETypesForEncoding registry would be empty on the QT port, right?
&gt; &gt; 
&gt; &gt; We use QImageReader for encoding images. :)
&gt; 
&gt; Hmm? QImageWriter is in the comment I recently found in the &lt;canvas&gt;.toDataURL image encoder.  I think QImageReader only decodes images. 
&gt;    http://trac.webkit.org/browser/trunk/Source/WebCore/platform/graphics/qt/ImageBufferQt.cpp#L398
&gt; 
&gt; 
&gt; &gt; It would not be empty, check the #else part from Source/WebCore/platform/MIMETypeRegistry.cpp:246.
&gt; 
&gt; Sorry, I was not talking about line 246.  From the review tool, it&apos;s line 294.  As of today, it&apos;s http://trac.webkit.org/browser/trunk/Source/WebCore/platform/MIMETypeRegistry.cpp#L290

Okay, I misread, sorry. Now it&apos;s clear for me that we are talking about encoding things. Two canvas test fail for me with disabled qimagedecoders. I&apos;m going to examine it. I opened a new bug (#83764) for it, let&apos;s continue the discussion there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>601098</commentid>
    <comment_count>48</comment_count>
    <who name="noel gordon">noel.gordon</who>
    <bug_when>2012-04-12 04:39:33 -0700</bug_when>
    <thetext>Right thank you, let&apos;s continue there.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>44785</attachid>
            <date>2009-12-14 04:11:43 -0800</date>
            <delta_ts>2009-12-14 21:02:04 -0800</delta_ts>
            <desc>Patch to use WebCore image decoders...</desc>
            <filename>0001-Qt-Be-able-to-use-the-WebCore-image-decoders.patch</filename>
            <type>text/plain</type>
            <size>3993</size>
            <attacher name="Holger Freyther">zecke</attacher>
            
              <data encoding="base64">RnJvbSBjYjAzYzRmNjExYmRlN2VjMzNkMzExZjIzYjQwNTQzZDYzYWI4MDI0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBIb2xnZXIgSGFucyBQZXRlciBGcmV5dGhlciA8emVja2VAc2Vs
ZmlzaC5vcmc+CkRhdGU6IE1vbiwgMTQgRGVjIDIwMDkgMTM6MDk6MjggKzAxMDAKU3ViamVjdDog
W1BBVENIXSBbUXRdIEJlIGFibGUgdG8gdXNlIHRoZSBXZWJDb3JlIGltYWdlIGRlY29kZXJzCgpU
aGlzIGlzIGEgd29yayBpbiBwcm9ncmVzcyBpbXBsZW1lbnRhdGlvbi4uLgoKLSBDb21waWxlIFdl
YkNvcmUgaW1hZ2UgZGVjb2RlcnMKLSBQcmVmZXIgdGhlbSBvdmVyIHRoZSBRdCBvbmVzIChmYWxs
YmFjayB0byBRdCB0aG91Z2gpCgpUT0RPOgogICAgLSBGaWd1cmUgb3V0IGlmIGl0IGlzIGEgY2Fz
ZSBmbyBFTkFCTEUgb3IgVVNFIGFuZCB1cGRhdGUKICAgICAgdGhlIHVzYWdlLgogICAgLSBGaXgg
YSBjcmFzaC4uLgotLS0KIFdlYkNvcmUvV2ViQ29yZS5wcm8gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgMzkgKysrKysrKysrKysrKysrKysrKysrKwogV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9xdC9JbWFnZURlY29kZXJRdC5jcHAgIHwgICAgOSArKysrKwogV2ViQ29yZS9wbGF0
Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29kZXIuY3BwIHwgICAgNiArKystCiAzIGZpbGVz
IGNoYW5nZWQsIDUzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5kZXggNDQxOTE5OS4u
NTczN2FmNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybworKysgYi9XZWJDb3JlL1dl
YkNvcmUucHJvCkBAIC0xNzksNiArMTc5LDQ1IEBAIGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9T
SU5HTEVfVEhSRUFERUQ9MSkgewogICAgIGVsc2U6REVGSU5FUyArPSBFTkFCTEVfWFNMVD0wCiB9
CiAKKyFjb250YWlucyhERUZJTkVTLCBFTkFCTEVfV0VCQ09SRV9JTUFHRV9ERUNPREVSUykgewor
ICAgIERFRklORVMgKz0gRU5BQkxFX1dFQkNPUkVfSU1BR0VfREVDT0RFUlM9MQorCisgICAgSU5D
TFVERVBBVEggKz0gXAorICAgICAgICAkJFBXRC9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9ibXAg
XAorICAgICAgICAkJFBXRC9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcgXAorICAgICAgICAk
JFBXRC9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYgXAorICAgICAgICAkJFBXRC9wbGF0Zm9y
bS9pbWFnZS1kZWNvZGVycy9pY28gXAorICAgICAgICAkJFBXRC9wbGF0Zm9ybS9pbWFnZS1kZWNv
ZGVycy9qcGVnIFwKKyAgICAgICAgJCRQV0QvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMveGJtCisg
ICAgICAgIAorICAgICAgICAKKworICAgIEhFQURFUlMgKz0gXAorICAgICAgICBwbGF0Zm9ybS9p
bWFnZS1kZWNvZGVycy9ibXAvQk1QSW1hZ2VEZWNvZGVyLmggXAorICAgICAgICBwbGF0Zm9ybS9p
bWFnZS1kZWNvZGVycy9ibXAvQk1QSW1hZ2VSZWFkZXIuaCBcCisgICAgICAgIHBsYXRmb3JtL2lt
YWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZURlY29kZXIuaCBcCisgICAgICAgIHBsYXRmb3JtL2lt
YWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZVJlYWRlci5oIFwKKyAgICAgICAgcGxhdGZvcm0vaW1h
Z2UtZGVjb2RlcnMvaWNvL0lDT0ltYWdlRGVjb2Rlci5oIFwKKyAgICAgICAgcGxhdGZvcm0vaW1h
Z2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmggXAorICAgICAgICBwbGF0Zm9ybS9p
bWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmggXAorICAgICAgICBwbGF0Zm9ybS9p
bWFnZS1kZWNvZGVycy94Ym0vWEJNSW1hZ2VEZWNvZGVyLmgKKworCisgICAgU09VUkNFUyArPSBc
CisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2JtcC9CTVBJbWFnZURlY29kZXIuY3Bw
IFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvYm1wL0JNUEltYWdlUmVhZGVyLmNw
cCBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZURlY29kZXIu
Y3BwIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlUmVhZGVy
LmNwcCBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2ljby9JQ09JbWFnZURlY29k
ZXIuY3BwIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VE
ZWNvZGVyLmNwcCBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3BuZy9QTkdJbWFn
ZURlY29kZXIuY3BwIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMveGJtL1hCTUlt
YWdlRGVjb2Rlci5jcHAgXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURl
Y29kZXIuY3BwCisKKyAgICBMSUJTICs9IC1sanBlZyAtbHBuZworCit9CisKIERFRklORVMgKz0g
V1RGX0NIQU5HRVM9MQogCiAjIEVuYWJsZSB0b3VjaCBldmVudCBzdXBwb3J0IHdpdGggUXQgNC42
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlRGVjb2RlclF0
LmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VEZWNvZGVyUXQuY3BwCmlu
ZGV4IDVmYTc2Y2EuLjFiNzU2NWYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvcXQvSW1hZ2VEZWNvZGVyUXQuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
cXQvSW1hZ2VEZWNvZGVyUXQuY3BwCkBAIC00Myw2ICs0MywxNSBAQCBJbWFnZURlY29kZXIqIElt
YWdlRGVjb2Rlcjo6Y3JlYXRlKGNvbnN0IFNoYXJlZEJ1ZmZlciYgZGF0YSkKICAgICBpZiAoZGF0
YS5zaXplKCkgPCA0KQogICAgICAgICByZXR1cm4gMDsKIAorI2lmIEVOQUJMRV9XRUJDT1JFX0lN
QUdFX0RFQ09ERVJTCisgICAgZXh0ZXJuIEltYWdlRGVjb2RlciogY3JlYXRlV2ViQ29yZURlY29k
ZXIoY29uc3QgU2hhcmVkQnVmZmVyJiBkYXRhKTsKKyAgICBJbWFnZURlY29kZXIqIGRlY29kZXIg
PSBjcmVhdGVXZWJDb3JlRGVjb2RlcihkYXRhKTsKKyAgICBpZiAoZGVjb2RlcikKKyAgICAgICAg
cmV0dXJuIGRlY29kZXI7CisKKyAgICAvLyBmYWxsIHRocm91Z2ggdG8gYmVuZWZpdCBmcm9tIFF0
IHBsdWdpbnMKKyNlbmRpZgorCiAgICAgcmV0dXJuIG5ldyBJbWFnZURlY29kZXJRdDsKIH0KIApk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29kZXIu
Y3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29kZXIuY3BwCmlu
ZGV4IGExNmI5NDAuLjE2NDE4NmMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2Ut
ZGVjb2RlcnMvSW1hZ2VEZWNvZGVyLmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRl
Y29kZXJzL0ltYWdlRGVjb2Rlci5jcHAKQEAgLTM2LDcgKzM2LDExIEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAorI2lmIFBMQVRGT1JNKFFUKQorSW1hZ2VEZWNvZGVyKiBjcmVhdGVXZWJDb3Jl
RGVjb2Rlcihjb25zdCBTaGFyZWRCdWZmZXImIGRhdGEpCisjZWxzZQogSW1hZ2VEZWNvZGVyKiBJ
bWFnZURlY29kZXI6OmNyZWF0ZShjb25zdCBTaGFyZWRCdWZmZXImIGRhdGEpCisjZW5kaWYKIHsK
ICAgICAvLyBXZSBuZWVkIGF0IGxlYXN0IDQgYnl0ZXMgdG8gZmlndXJlIG91dCB3aGF0IGtpbmQg
b2YgaW1hZ2Ugd2UncmUgZGVhbGluZyB3aXRoLgogICAgIGludCBsZW5ndGggPSBkYXRhLnNpemUo
KTsKQEAgLTgxLDcgKzg1LDcgQEAgSW1hZ2VEZWNvZGVyKiBJbWFnZURlY29kZXI6OmNyZWF0ZShj
b25zdCBTaGFyZWRCdWZmZXImIGRhdGEpCiAgICAgcmV0dXJuIDA7CiB9CiAKLSNpZiAhUExBVEZP
Uk0oU0tJQSkKKyNpZiAhUExBVEZPUk0oU0tJQSkgJiYgIVBMQVRGT1JNKFFUKQogCiBSR0JBMzJC
dWZmZXI6OlJHQkEzMkJ1ZmZlcigpCiAgICAgOiBtX2hhc0FscGhhKGZhbHNlKQotLSAKMS42LjMu
MwoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>44838</attachid>
            <date>2009-12-14 21:02:04 -0800</date>
            <delta_ts>2012-02-22 02:46:39 -0800</delta_ts>
            <desc>Patch to use WebCore image decoder</desc>
            <filename>0001-Qt-Be-able-to-use-the-WebCore-image-decoders.patch</filename>
            <type>text/plain</type>
            <size>5510</size>
            <attacher name="Holger Freyther">zecke</attacher>
            
              <data encoding="base64">RnJvbSA2MzVlZTViNWMzZDg1YWRkMTA4OGE1NTJiYmQ2NzJjMTNkOTllYThkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBIb2xnZXIgSGFucyBQZXRlciBGcmV5dGhlciA8emVja2VAc2Vs
ZmlzaC5vcmc+CkRhdGU6IE1vbiwgMTQgRGVjIDIwMDkgMTM6MDk6MjggKzAxMDAKU3ViamVjdDog
W1BBVENIXSBbUXRdIEJlIGFibGUgdG8gdXNlIHRoZSBXZWJDb3JlIGltYWdlIGRlY29kZXJzCgpU
aGlzIGlzIGEgd29yayBpbiBwcm9ncmVzcyBpbXBsZW1lbnRhdGlvbi4uLgoKLSBDb21waWxlIFdl
YkNvcmUgaW1hZ2UgZGVjb2RlcnMKLSBQcmVmZXIgdGhlbSBvdmVyIHRoZSBRdCBvbmVzIChmYWxs
YmFjayB0byBRdCB0aG91Z2gpCgpUT0RPOgogICAgLSBGaWd1cmUgb3V0IGlmIGl0IGlzIGEgY2Fz
ZSBmbyBFTkFCTEUgb3IgVVNFIGFuZCB1cGRhdGUKICAgICAgdGhlIHVzYWdlLgogICAgLSBJbXBs
ZW1lbnQgbG9jay91bmxvY2sgdG8gZGVjaWRlIHdoZW4gdG8gdGhyb3cgdGhlIFFJbWFnZQogICAg
ICBhd2F5LgotLS0KIFdlYkNvcmUvV2ViQ29yZS5wcm8gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgIHwgICAzOSArKysrKysrKysrKysrKysrKysrKwogV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9xdC9JbWFnZURlY29kZXJRdC5jcHAgICAgfCAgICA5ICsrKysrCiBXZWJDb3JlL3BsYXRm
b3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5jcHAgICB8ICAgIDYgKysrLQogV2ViQ29y
ZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29kZXIuaCAgICAgfCAgICAxICsKIC4u
Li9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9xdC9SR0JBMzJCdWZmZXJRdC5jcHAgIHwgICAgNyAr
KysrCiA1IGZpbGVzIGNoYW5nZWQsIDYxIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb25zKC0pCgpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnBybyBiL1dlYkNvcmUvV2ViQ29yZS5wcm8KaW5k
ZXggMTc5OGM4NC4uODQ0MDc2NyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLnBybworKysg
Yi9XZWJDb3JlL1dlYkNvcmUucHJvCkBAIC0xNzksNiArMTc5LDQ1IEBAIGNvbnRhaW5zKERFRklO
RVMsIEVOQUJMRV9TSU5HTEVfVEhSRUFERUQ9MSkgewogICAgIGVsc2U6REVGSU5FUyArPSBFTkFC
TEVfWFNMVD0wCiB9CiAKKyFjb250YWlucyhERUZJTkVTLCBFTkFCTEVfV0VCQ09SRV9JTUFHRV9E
RUNPREVSUykgeworICAgIERFRklORVMgKz0gRU5BQkxFX1dFQkNPUkVfSU1BR0VfREVDT0RFUlM9
MQorCisgICAgSU5DTFVERVBBVEggKz0gXAorICAgICAgICAkJFBXRC9wbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9ibXAgXAorICAgICAgICAkJFBXRC9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcg
XAorICAgICAgICAkJFBXRC9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYgXAorICAgICAgICAk
JFBXRC9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9pY28gXAorICAgICAgICAkJFBXRC9wbGF0Zm9y
bS9pbWFnZS1kZWNvZGVycy9qcGVnIFwKKyAgICAgICAgJCRQV0QvcGxhdGZvcm0vaW1hZ2UtZGVj
b2RlcnMveGJtCisKKworCisgICAgSEVBREVSUyArPSBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdl
LWRlY29kZXJzL2JtcC9CTVBJbWFnZURlY29kZXIuaCBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdl
LWRlY29kZXJzL2JtcC9CTVBJbWFnZVJlYWRlci5oIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2Ut
ZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5oIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2Ut
ZGVjb2RlcnMvZ2lmL0dJRkltYWdlUmVhZGVyLmggXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9pY28vSUNPSW1hZ2VEZWNvZGVyLmggXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9qcGVnL0pQRUdJbWFnZURlY29kZXIuaCBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdl
LWRlY29kZXJzL3BuZy9QTkdJbWFnZURlY29kZXIuaCBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdl
LWRlY29kZXJzL3hibS9YQk1JbWFnZURlY29kZXIuaAorCisKKyAgICBTT1VSQ0VTICs9IFwKKyAg
ICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvYm1wL0JNUEltYWdlRGVjb2Rlci5jcHAgXAor
ICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9ibXAvQk1QSW1hZ2VSZWFkZXIuY3BwIFwK
KyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5jcHAg
XAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1hZ2VSZWFkZXIuY3Bw
IFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvaWNvL0lDT0ltYWdlRGVjb2Rlci5j
cHAgXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJbWFnZURlY29k
ZXIuY3BwIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcG5nL1BOR0ltYWdlRGVj
b2Rlci5jcHAgXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy94Ym0vWEJNSW1hZ2VE
ZWNvZGVyLmNwcCBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rl
ci5jcHAKKworICAgIExJQlMgKz0gLWxqcGVnIC1scG5nCisKK30KKwogREVGSU5FUyArPSBXVEZf
Q0hBTkdFUz0xCiAKICMgRW5hYmxlIHRvdWNoIGV2ZW50IHN1cHBvcnQgd2l0aCBRdCA0LjYKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VEZWNvZGVyUXQuY3Bw
IGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZURlY29kZXJRdC5jcHAKaW5kZXgg
NWZhNzZjYS4uMWI3NTY1ZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9x
dC9JbWFnZURlY29kZXJRdC5jcHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9xdC9J
bWFnZURlY29kZXJRdC5jcHAKQEAgLTQzLDYgKzQzLDE1IEBAIEltYWdlRGVjb2RlciogSW1hZ2VE
ZWNvZGVyOjpjcmVhdGUoY29uc3QgU2hhcmVkQnVmZmVyJiBkYXRhKQogICAgIGlmIChkYXRhLnNp
emUoKSA8IDQpCiAgICAgICAgIHJldHVybiAwOwogCisjaWYgRU5BQkxFX1dFQkNPUkVfSU1BR0Vf
REVDT0RFUlMKKyAgICBleHRlcm4gSW1hZ2VEZWNvZGVyKiBjcmVhdGVXZWJDb3JlRGVjb2Rlcihj
b25zdCBTaGFyZWRCdWZmZXImIGRhdGEpOworICAgIEltYWdlRGVjb2RlciogZGVjb2RlciA9IGNy
ZWF0ZVdlYkNvcmVEZWNvZGVyKGRhdGEpOworICAgIGlmIChkZWNvZGVyKQorICAgICAgICByZXR1
cm4gZGVjb2RlcjsKKworICAgIC8vIGZhbGwgdGhyb3VnaCB0byBiZW5lZml0IGZyb20gUXQgcGx1
Z2lucworI2VuZGlmCisKICAgICByZXR1cm4gbmV3IEltYWdlRGVjb2RlclF0OwogfQogCmRpZmYg
LS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5jcHAg
Yi9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5jcHAKaW5kZXgg
YTE2Yjk0MC4uMTY0MTg2YyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNv
ZGVycy9JbWFnZURlY29kZXIuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2Rl
cnMvSW1hZ2VEZWNvZGVyLmNwcApAQCAtMzYsNyArMzYsMTEgQEAKIAogbmFtZXNwYWNlIFdlYkNv
cmUgewogCisjaWYgUExBVEZPUk0oUVQpCitJbWFnZURlY29kZXIqIGNyZWF0ZVdlYkNvcmVEZWNv
ZGVyKGNvbnN0IFNoYXJlZEJ1ZmZlciYgZGF0YSkKKyNlbHNlCiBJbWFnZURlY29kZXIqIEltYWdl
RGVjb2Rlcjo6Y3JlYXRlKGNvbnN0IFNoYXJlZEJ1ZmZlciYgZGF0YSkKKyNlbmRpZgogewogICAg
IC8vIFdlIG5lZWQgYXQgbGVhc3QgNCBieXRlcyB0byBmaWd1cmUgb3V0IHdoYXQga2luZCBvZiBp
bWFnZSB3ZSdyZSBkZWFsaW5nIHdpdGguCiAgICAgaW50IGxlbmd0aCA9IGRhdGEuc2l6ZSgpOwpA
QCAtODEsNyArODUsNyBAQCBJbWFnZURlY29kZXIqIEltYWdlRGVjb2Rlcjo6Y3JlYXRlKGNvbnN0
IFNoYXJlZEJ1ZmZlciYgZGF0YSkKICAgICByZXR1cm4gMDsKIH0KIAotI2lmICFQTEFURk9STShT
S0lBKQorI2lmICFQTEFURk9STShTS0lBKSAmJiAhUExBVEZPUk0oUVQpCiAKIFJHQkEzMkJ1ZmZl
cjo6UkdCQTMyQnVmZmVyKCkKICAgICA6IG1faGFzQWxwaGEoZmFsc2UpCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5oIGIvV2ViQ29yZS9w
bGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29kZXIuaAppbmRleCBkZTI0ODI4Li5hOWVl
MDBlIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVj
b2Rlci5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvSW1hZ2VEZWNvZGVy
LmgKQEAgLTE0NSw2ICsxNDUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAjaWYgUExBVEZPUk0o
U0tJQSkKICAgICAgICAgICAgIHJldHVybiBtX2JpdG1hcC5nZXRBZGRyMzIoeCwgeSk7CiAjZWxp
ZiBQTEFURk9STShRVCkKKyAgICAgICAgICAgICN3YXJuaW5nICJEbyBub3QgdXNlIHNjYW5MaW5l
IGhlcmUuLi4gY2FjaGUgdGhlIFFJbWFnZTo6Yml0cygpIHBvaW50ZXIiCiAgICAgICAgICAgICBy
ZXR1cm4gcmVpbnRlcnByZXRfY2FzdDxRUmdiKj4obV9pbWFnZS5zY2FuTGluZSh5KSkgKyB4Owog
I2Vsc2UKICAgICAgICAgICAgIHJldHVybiBtX2J5dGVzLmRhdGEoKSArICh5ICogd2lkdGgoKSkg
KyB4OwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9xdC9SR0JB
MzJCdWZmZXJRdC5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3F0L1JHQkEz
MkJ1ZmZlclF0LmNwcAppbmRleCA1ZTliNTI3Li5lNTc1NTI0IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3F0L1JHQkEzMkJ1ZmZlclF0LmNwcAorKysgYi9XZWJD
b3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3F0L1JHQkEzMkJ1ZmZlclF0LmNwcApAQCAtOTgs
NyArOTgsMTQgQEAgYm9vbCBSR0JBMzJCdWZmZXI6OnNldFNpemUoaW50IG5ld1dpZHRoLCBpbnQg
bmV3SGVpZ2h0KQogUVBpeG1hcCogUkdCQTMyQnVmZmVyOjphc05ld05hdGl2ZUltYWdlKCkgY29u
c3QKIHsKICAgICBRUGl4bWFwIHBpeCA9IFFQaXhtYXA6OmZyb21JbWFnZShtX2ltYWdlKTsKKwor
I2lmICFFTkFCTEVfV0VCQ09SRV9JTUFHRV9ERUNPREVSUworICAgIC8vIFdlIHdpbGwgbmVlZCB0
byBhZGQgYSBsb2NrL3VubG9jayBzdXJmYWNlIHRvIGRlY2lkZSB3aGVuIHdlIGNhbgorICAgIC8v
IHRocm93IGF3YXkgdGhlIGltYWdlLiBJbiBjYXNlIG9mIHRoZSBHSUYgZGVjb2RlciBpdCBtaWdo
dCBuZWVkCisgICAgLy8gdGhlIHByZXZpb3VzIGltYWdlIGZvciBkZWNvZGluZy4KKyAgICAvLyBp
ZiAoIW1fbG9ja2VkKQogICAgIG1faW1hZ2UgPSBRSW1hZ2UoKTsKKyNlbmRpZgogCiAgICAgcmV0
dXJuIG5ldyBRUGl4bWFwKHBpeCk7CiB9Ci0tIAoxLjYuMy4zCgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>128165</attachid>
            <date>2012-02-22 02:46:39 -0800</date>
            <delta_ts>2012-02-23 02:52:19 -0800</delta_ts>
            <desc>Allow to compile WebCore imagedecoders</desc>
            <filename>webcore_imgdecoders.patch</filename>
            <type>text/plain</type>
            <size>11605</size>
            <attacher name="Zoltan Horvath">zoltan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA4YWEwZmZiLi40ZTJiMzJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYg
QEAKKzIwMTItMDItMjIgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtpdC5vcmc+CisKKyAg
ICAgICAgW1F0XSBBbGxvdyB0byB1c2UgV2ViQ29yZSBpbWFnZWRlY29kZXJzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMjQxMAorCisgICAgICAgIEFk
ZCBFTkFCTEUoUVRfSU1BR0VfREVDT0RFUikgZ3VhcmRzIGFyb3VuZCBRdCBpbWFnZWRlY29kZXJz
IGFuZCBzZXQgaXQgdG8gZGVmYXVsdC4KKyAgICAgICAgQnkgcGFzc2luZyBFTkFCTEVfUVRfSU1B
R0VfREVDT0RFUj0wIGRlZmluZSB0byB0aGUgYnVpbGQgc3lzdGVtLCBXZWJLaXQgd2lsbCBidWls
ZAorICAgICAgICB3aXRoIFdlYkNvcmUncyBpbWFnZWRlY29kZXJzIGFuZCB3aXRoIHN1cHBvcnQg
b2YgV0VCUCBpbWFnZSBmb3JtYXQuCisKKyAgICAgICAgSSdtIGNvbnRpbnVpbmcgdGhlIHJlZmFj
dG9yaW5nIG9mIHRoaXMgYXJlYSBhbmQgdHJ5IHRvIHVzZSBRdCBpbWFnZWRlY29kZXJzIG9ubHkg
aW4gCisgICAgICAgIGNhc2VzIHdoZW4gV2ViQ29yZSBkb2Vzbid0IHN1cHBvcnQgdGhlIGltYWdl
IGZvcm1hdC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBObyBiZWhhdmlvciBjaGFuZ2UsIG5vIG5lZWQgbmV3IHRlc3RzLgorCisgICAgICAgICogVGFy
Z2V0LnByaToKKyAgICAgICAgKiBXZWJDb3JlLnByaToKKyAgICAgICAgKiBwbGF0Zm9ybS9NSU1F
VHlwZVJlZ2lzdHJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmluaXRpYWxpemVTdXBwb3J0ZWRJ
bWFnZU1JTUVUeXBlcyk6CisgICAgICAgIChXZWJDb3JlOjppbml0aWFsaXplU3VwcG9ydGVkSW1h
Z2VNSU1FVHlwZXNGb3JFbmNvZGluZyk6CisgICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2Rl
cnMvSW1hZ2VEZWNvZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZUZyYW1lOjpnZXRBZGRy
KToKKyAgICAgICAgKEltYWdlRnJhbWUpOgorICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRlY29k
ZXJzL2pwZWcvSlBFR0ltYWdlRGVjb2Rlci5jcHA6CisgICAgICAgIE5PX1JFVFVSTiBhZGRlZCB0
byBhIGZ1bmN0aW9uIHRvIGF2b2lkIHdhcm5pbmcgbWVzc2FnZS4KKyAgICAgICAgKiBwbGF0Zm9y
bS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcDoKKyAgICAgICAgTk9fUkVU
VVJOIGFkZGVkIHRvIGEgZnVuY3Rpb24gdG8gYXZvaWQgd2FybmluZyBtZXNzYWdlLgorICAgICAg
ICAoV2ViQ29yZSk6CisgICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcXQvSW1hZ2VG
cmFtZVF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VG
cmFtZTo6YXNOZXdOYXRpdmVJbWFnZSk6CisKIDIwMTItMDItMjEgIFBhdHJpY2sgR2Fuc3RlcmVy
ICA8cGFyb2dhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVXNlIFdpbjMyIEFQSSB0byBnZXQgZmls
ZSBpbmZvcm1hdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaSBiL1Nv
dXJjZS9XZWJDb3JlL1RhcmdldC5wcmkKaW5kZXggN2RlYWU2YS4uMDdkN2MwNCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQu
cHJpCkBAIC0yMTc5LDcgKzIxNzksNiBAQCBIRUFERVJTICs9IFwKICAgICBwbGF0Zm9ybS9ncmFw
aGljcy9SZWdpb24uaCBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvUm91bmRlZFJlY3QuaCBcCiAg
ICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvRm9udEN1c3RvbVBsYXRmb3JtRGF0YS5oIFwKLSAgICBw
bGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZURlY29kZXJRdC5oIFwKICAgICBwbGF0Zm9ybS9ncmFw
aGljcy9xdC9TdGlsbEltYWdlUXQuaCBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvVHJhbnNw
YXJlbmN5TGF5ZXIuaCBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvU2VnbWVudGVkRm9udERhdGEu
aCBcCkBAIC0yNzkwLDcgKzI3ODksNiBAQCBTT1VSQ0VTICs9IFwKICAgICBwbGF0Zm9ybS9ncmFw
aGljcy9xdC9HcmFwaGljc0NvbnRleHRRdC5jcHAgXAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3F0
L0ljb25RdC5jcHAgXAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlQnVmZmVyUXQuY3Bw
IFwKLSAgICBwbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZURlY29kZXJRdC5jcHAgXAogICAgIHBs
YXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlUXQuY3BwIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9x
dC9JbnRQb2ludFF0LmNwcCBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW50UmVjdFF0LmNw
cCBcCkBAIC0zOTI3LDYgKzM5MjUsMzIgQEAgY29udGFpbnMoREVGSU5FUywgRU5BQkxFX01IVE1M
PTEpIHsKICAgICAgICAgcGFnZS9QYWdlU2VyaWFsaXplci5jcHAKIH0KIAorY29udGFpbnMoREVG
SU5FUywgRU5BQkxFX1FUX0lNQUdFX0RFQ09ERVI9MSkgeworICAgIEhFQURFUlMgKz0gcGxhdGZv
cm0vZ3JhcGhpY3MvcXQvSW1hZ2VEZWNvZGVyUXQuaAorICAgIFNPVVJDRVMgKz0gcGxhdGZvcm0v
Z3JhcGhpY3MvcXQvSW1hZ2VEZWNvZGVyUXQuY3BwCit9IGVsc2UgeworICAgIEhFQURFUlMgKz0g
XAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9ibXAvQk1QSW1hZ2VEZWNvZGVyLmgg
XAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9ibXAvQk1QSW1hZ2VSZWFkZXIuaCBc
CisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZURlY29kZXIuaCBc
CisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJbWFnZVJlYWRlci5oXAor
ICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9pY28vSUNPSW1hZ2VEZWNvZGVyLmggXAor
ICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJbWFnZURlY29kZXIuaCBc
CisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3BuZy9QTkdJbWFnZURlY29kZXIuaCBc
CisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3dlYnAvV0VCUEltYWdlRGVjb2Rlci5o
CisKKyAgICBTT1VSQ0VTICs9IFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvSW1h
Z2VEZWNvZGVyLmNwcCBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2JtcC9CTVBJ
bWFnZURlY29kZXIuY3BwIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvYm1wL0JN
UEltYWdlUmVhZGVyLmNwcCBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9H
SUZJbWFnZURlY29kZXIuY3BwIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lm
L0dJRkltYWdlUmVhZGVyLmNwcFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvaWNv
L0lDT0ltYWdlRGVjb2Rlci5jcHAgXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9q
cGVnL0pQRUdJbWFnZURlY29kZXIuY3BwIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2Rl
cnMvcG5nL1BOR0ltYWdlRGVjb2Rlci5jcHAgXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNv
ZGVycy93ZWJwL1dFQlBJbWFnZURlY29kZXIuY3BwCit9CisKICFzeXN0ZW0tc3FsaXRlOmV4aXN0
cyggJCR7U1FMSVRFM1NSQ0RJUn0vc3FsaXRlMy5jICkgewogICAgICMgQnVpbGQgc3FsaXRlMyBp
bnRvIFdlYkNvcmUgZnJvbSBzb3VyY2UKICAgICAjIHNvbWV3aGF0IGNvcGllZCBmcm9tICQkUVRf
U09VUkNFX1RSRUUvc3JjL3BsdWdpbnMvc3FsZHJpdmVycy9zcWxpdGUvc3FsaXRlLnBybwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcmkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnByaQppbmRleCA0ZjQ3YzFiLi44NjhhY2MyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnByaQorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnByaQpAQCAtMjAyLDYg
KzIwMiwxNyBAQCBjb250YWlucyhDT05GSUcsIHRleG1hcCkgewogICAgIExJQlMgKz0gLWxzcWxp
dGUzCiB9CiAKK2NvbnRhaW5zKERFRklORVMsIEVOQUJMRV9RVF9JTUFHRV9ERUNPREVSPTApIHsK
KyAgICBJTkNMVURFUEFUSCArPSBcCisgICAgICAgICQkU09VUkNFX0RJUi9wbGF0Zm9ybS9pbWFn
ZS1kZWNvZGVycy9ibXAgXAorICAgICAgICAkJFNPVVJDRV9ESVIvcGxhdGZvcm0vaW1hZ2UtZGVj
b2RlcnMvZ2lmIFwKKyAgICAgICAgJCRTT1VSQ0VfRElSL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJz
L2ljbyBcCisgICAgICAgICQkU09VUkNFX0RJUi9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVn
IFwKKyAgICAgICAgJCRTT1VSQ0VfRElSL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3BuZyBcCisg
ICAgICAgICQkU09VUkNFX0RJUi9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy93ZWJwCisgICAgTElC
UyArPSAtbGpwZWcgLWxwbmcxMgorfQorCiB3aW4zMi0qfHdpbmNlKiB7CiAgICAgRExMREVTVERJ
UiA9ICQke1JPT1RfQlVJTERfRElSfS9iaW4KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vTUlNRVR5cGVSZWdpc3RyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9N
SU1FVHlwZVJlZ2lzdHJ5LmNwcAppbmRleCBiNWYyZDQ1Li5jYmIwYWFlIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9NSU1FVHlwZVJlZ2lzdHJ5LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9NSU1FVHlwZVJlZ2lzdHJ5LmNwcApAQCAtMzksNyArMzksNyBAQAog
I2luY2x1ZGUgPEFwcGxpY2F0aW9uU2VydmljZXMvQXBwbGljYXRpb25TZXJ2aWNlcy5oPgogI2lu
Y2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KICNlbmRpZgotI2lmIFBMQVRGT1JNKFFUKQorI2lmIFBM
QVRGT1JNKFFUKSAmJiBFTkFCTEUoUVRfSU1BR0VfREVDT0RFUikKICNpbmNsdWRlIDxxaW1hZ2Vy
ZWFkZXIuaD4KICNpbmNsdWRlIDxxaW1hZ2V3cml0ZXIuaD4KICNlbmRpZgpAQCAtMjI5LDcgKzIy
OSw3IEBAIHN0YXRpYyB2b2lkIGluaXRpYWxpemVTdXBwb3J0ZWRJbWFnZU1JTUVUeXBlcygpCiAg
ICAgc3VwcG9ydGVkSW1hZ2VNSU1FVHlwZXMtPnJlbW92ZSgiYXBwbGljYXRpb24vcGRmIik7CiAg
ICAgc3VwcG9ydGVkSW1hZ2VNSU1FVHlwZXMtPnJlbW92ZSgiYXBwbGljYXRpb24vcG9zdHNjcmlw
dCIpOwogCi0jZWxpZiBQTEFURk9STShRVCkKKyNlbGlmIFBMQVRGT1JNKFFUKSAmJiBFTkFCTEUo
UVRfSU1BR0VfREVDT0RFUikKICAgICBRTGlzdDxRQnl0ZUFycmF5PiBmb3JtYXRzID0gUUltYWdl
UmVhZGVyOjpzdXBwb3J0ZWRJbWFnZUZvcm1hdHMoKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsg
aSA8IHN0YXRpY19jYXN0PHNpemVfdD4oZm9ybWF0cy5zaXplKCkpOyArK2kpIHsKICNpZiBFTkFC
TEUoU1ZHKQpAQCAtMjg5LDcgKzI4OSw3IEBAIHN0YXRpYyB2b2lkIGluaXRpYWxpemVTdXBwb3J0
ZWRJbWFnZU1JTUVUeXBlc0ZvckVuY29kaW5nKCkKICAgICBzdXBwb3J0ZWRJbWFnZU1JTUVUeXBl
c0ZvckVuY29kaW5nLT5hZGQoImltYWdlL2pwZWciKTsKICAgICBzdXBwb3J0ZWRJbWFnZU1JTUVU
eXBlc0ZvckVuY29kaW5nLT5hZGQoImltYWdlL2dpZiIpOwogI2VuZGlmCi0jZWxpZiBQTEFURk9S
TShRVCkKKyNlbGlmIFBMQVRGT1JNKFFUKSAmJiBFTkFCTEUoUVRfSU1BR0VfREVDT0RFUikKICAg
ICBRTGlzdDxRQnl0ZUFycmF5PiBmb3JtYXRzID0gUUltYWdlV3JpdGVyOjpzdXBwb3J0ZWRJbWFn
ZUZvcm1hdHMoKTsKICAgICBmb3IgKGludCBpID0gMDsgaSA8IGZvcm1hdHMuc2l6ZSgpOyArK2kp
IHsKICAgICAgICAgU3RyaW5nIG1pbWVUeXBlID0gTUlNRVR5cGVSZWdpc3RyeTo6Z2V0TUlNRVR5
cGVGb3JFeHRlbnNpb24oZm9ybWF0cy5hdChpKS5jb25zdERhdGEoKSk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29kZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5oCmluZGV4
IDlkOWIzNGYuLjI5MTBhNWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lt
YWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5oCkBAIC02NCw3ICs2NCw3IEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKICAgICAgICAgICAgIERpc3Bvc2VPdmVyd3JpdGVQcmV2aW91cyAgLy8gQ2xl
YXIgZnJhbWUgdG8gcHJldmlvdXMgZnJhbWVidWZmZXIKICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgLy8gY29udGVudHMKICAgICAgICAgfTsKLSNpZiBVU0UoU0tJQSkgfHwg
UExBVEZPUk0oUVQpCisjaWYgVVNFKFNLSUEpIHx8IChQTEFURk9STShRVCkgJiYgRU5BQkxFKFFU
X0lNQUdFX0RFQ09ERVIpKQogICAgICAgICB0eXBlZGVmIHVpbnQzMl90IFBpeGVsRGF0YTsKICNl
bHNlCiAgICAgICAgIHR5cGVkZWYgdW5zaWduZWQgUGl4ZWxEYXRhOwpAQCAtMTQwLDcgKzE0MCw3
IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgewogI2lmIFVTRShTS0lBKQogICAgICAg
ICAgICAgcmV0dXJuIG1fYml0bWFwLmJpdG1hcCgpLmdldEFkZHIzMih4LCB5KTsKLSNlbGlmIFBM
QVRGT1JNKFFUKQorI2VsaWYgUExBVEZPUk0oUVQpICYmIEVOQUJMRShRVF9JTUFHRV9ERUNPREVS
KQogICAgICAgICAgICAgbV9pbWFnZSA9IG1fcGl4bWFwLnRvSW1hZ2UoKTsKICAgICAgICAgICAg
IG1fcGl4bWFwID0gUVBpeG1hcCgpOwogICAgICAgICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nh
c3RfcHRyPFFSZ2IqPihtX2ltYWdlLnNjYW5MaW5lKHkpKSArIHg7CkBAIC0xNDksNyArMTQ5LDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogI2VuZGlmCiAgICAgICAgIH0KIAotI2lmIFBMQVRGT1JN
KFFUKQorI2lmIFBMQVRGT1JNKFFUKSAmJiBFTkFCTEUoUVRfSU1BR0VfREVDT0RFUikKICAgICAg
ICAgdm9pZCBzZXRQaXhtYXAoY29uc3QgUVBpeG1hcCYgcGl4bWFwKTsKICNlbmRpZgogCkBAIC0x
OTAsNyArMTkwLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogI2lmIFBMQVRGT1JNKENIUk9NSVVN
KSAmJiBPUyhEQVJXSU4pCiAgICAgICAgIENvbG9yUHJvZmlsZSBtX2NvbG9yUHJvZmlsZTsKICNl
bmRpZgotI2VsaWYgUExBVEZPUk0oUVQpCisjZWxpZiBQTEFURk9STShRVCkgJiYgRU5BQkxFKFFU
X0lNQUdFX0RFQ09ERVIpCiAgICAgICAgIG11dGFibGUgUVBpeG1hcCBtX3BpeG1hcDsKICAgICAg
ICAgbXV0YWJsZSBRSW1hZ2UgbV9pbWFnZTsKICAgICAgICAgYm9vbCBtX2hhc0FscGhhOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVH
SW1hZ2VEZWNvZGVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJz
L2pwZWcvSlBFR0ltYWdlRGVjb2Rlci5jcHAKaW5kZXggZjBmYmU0NC4uYWQ3YTdiMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1h
Z2VEZWNvZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVy
cy9qcGVnL0pQRUdJbWFnZURlY29kZXIuY3BwCkBAIC0xMDMsNyArMTAzLDcgQEAgdm9pZCBpbml0
X3NvdXJjZShqX2RlY29tcHJlc3NfcHRyIGpkKTsKIGJvb2xlYW4gZmlsbF9pbnB1dF9idWZmZXIo
al9kZWNvbXByZXNzX3B0ciBqZCk7CiB2b2lkIHNraXBfaW5wdXRfZGF0YShqX2RlY29tcHJlc3Nf
cHRyIGpkLCBsb25nIG51bV9ieXRlcyk7CiB2b2lkIHRlcm1fc291cmNlKGpfZGVjb21wcmVzc19w
dHIgamQpOwotdm9pZCBlcnJvcl9leGl0KGpfY29tbW9uX3B0ciBjaW5mbyk7Cit2b2lkIGVycm9y
X2V4aXQoal9jb21tb25fcHRyIGNpbmZvKSBOT19SRVRVUk47CiAKIC8vIEltcGxlbWVudGF0aW9u
IG9mIGEgSlBFRyBzcmMgb2JqZWN0IHRoYXQgdW5kZXJzdGFuZHMgb3VyIHN0YXRlIG1hY2hpbmUK
IHN0cnVjdCBkZWNvZGVyX3NvdXJjZV9tZ3IgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcG5nL1BOR0ltYWdlRGVjb2Rlci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcApp
bmRleCBjNTBlYmU5Li42NjUxNGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcApAQCAt
NjQsNiArNjQsNyBAQCBjb25zdCBkb3VibGUgY0ludmVyc2VHYW1tYSA9IDAuNDU0NTU7CiBjb25z
dCB1bnNpZ25lZCBsb25nIGNNYXhQTkdTaXplID0gMTAwMDAwMFVMOwogCiAvLyBDYWxsZWQgaWYg
dGhlIGRlY29kaW5nIG9mIHRoZSBpbWFnZSBmYWlscy4KK3N0YXRpYyB2b2lkIFBOR0FQSSBkZWNv
ZGluZ0ZhaWxlZChwbmdfc3RydWN0cCBwbmcsIHBuZ19jb25zdF9jaGFycCkgTk9fUkVUVVJOOwog
c3RhdGljIHZvaWQgUE5HQVBJIGRlY29kaW5nRmFpbGVkKHBuZ19zdHJ1Y3RwIHBuZywgcG5nX2Nv
bnN0X2NoYXJwKQogewogICAgIGxvbmdqbXAoSk1QQlVGKHBuZyksIDEpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcXQvSW1hZ2VGcmFtZVF0LmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3F0L0ltYWdlRnJhbWVR
dC5jcHAKaW5kZXggMWVhZDlhOS4uMGE2ODgyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcXQvSW1hZ2VGcmFtZVF0LmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9xdC9JbWFnZUZyYW1lUXQuY3BwCkBAIC0z
MCwxMSArMzAsMjUgQEAKIAogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAKLSNpbmNsdWRl
IDxRUGl4bWFwPgotI2luY2x1ZGUgPHN0ZGlvLmg+Ci0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAor
I2lmICFFTkFCTEUoUVRfSU1BR0VfREVDT0RFUikKKworUVBpeG1hcCogSW1hZ2VGcmFtZTo6YXNO
ZXdOYXRpdmVJbWFnZSgpIGNvbnN0Cit7CisgICAgUUltYWdlOjpGb3JtYXQgZm10OworICAgICAg
ICBpZiAobV9oYXNBbHBoYSkKKyAgICAgICAgICAgIGZtdCA9IG1fcHJlbXVsdGlwbHlBbHBoYSA/
ICBRSW1hZ2U6OkZvcm1hdF9BUkdCMzJfUHJlbXVsdGlwbGllZCA6IFFJbWFnZTo6Rm9ybWF0X0FS
R0IzMjsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgZm10ID0gUUltYWdlOjpGb3JtYXRfUkdC
MzI7CisKKyAgICBRSW1hZ2UgaW1nKHJlaW50ZXJwcmV0X2Nhc3Q8dWNoYXIqPihtX2J5dGVzKSwg
bV9zaXplLndpZHRoKCksIG1fc2l6ZS5oZWlnaHQoKSwgc2l6ZW9mKFBpeGVsRGF0YSkgKiBtX3Np
emUud2lkdGgoKSwgZm10KTsKKworICAgIHJldHVybiBuZXcgUVBpeG1hcChRUGl4bWFwOjpmcm9t
SW1hZ2UoaW1nKSk7Cit9CisKKyNlbHNlCisKIEltYWdlRnJhbWU6OkltYWdlRnJhbWUoKQogICAg
IDogbV9oYXNBbHBoYShmYWxzZSkgCiAgICAgLCBtX3NpemUoKQpAQCAtMTU0LDQgKzE2OCw2IEBA
IGludCBJbWFnZUZyYW1lOjpoZWlnaHQoKSBjb25zdAogICAgIHJldHVybiBtX3NpemUuaGVpZ2h0
KCk7CiB9CiAKKyNlbmRpZgorCiB9CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29s
cy9DaGFuZ2VMb2cKaW5kZXggYzYyYjdhMy4uZWEzMTA4MCAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hh
bmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEyLTAyLTIy
ICBab2x0YW4gSG9ydmF0aCAgPHpvbHRhbkB3ZWJraXQub3JnPgorCisgICAgICAgIFtRdF0gQWxs
b3cgdG8gdXNlIFdlYkNvcmUgaW1hZ2VkZWNvZGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzI0MTAKKworICAgICAgICBBZGQgRU5BQkxFX1FUX0lN
QUdFX0RFQ09ERVIgbWFjcm8sIGl0J3MgZW5hYmxlZCBieSBkZWZhdWx0LgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcW1ha2UvbWtzcGVjcy9mZWF0
dXJlcy9mZWF0dXJlcy5wcmY6CisKIDIwMTItMDItMjAgIEFkYW0gQmFydGggIDxhYmFydGhAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBtYXN0ZXJjZmdfdW5pdHRlc3QucHkgZmFpbHMgd2l0aG91dCBz
aW1wbGVqc29uCmRpZmYgLS1naXQgYS9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL2ZlYXR1
cmVzLnByZiBiL1Rvb2xzL3FtYWtlL21rc3BlY3MvZmVhdHVyZXMvZmVhdHVyZXMucHJmCmluZGV4
IGVhNzMxZTQuLmE0Mjc5MTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL3FtYWtlL21rc3BlY3MvZmVhdHVy
ZXMvZmVhdHVyZXMucHJmCisrKyBiL1Rvb2xzL3FtYWtlL21rc3BlY3MvZmVhdHVyZXMvZmVhdHVy
ZXMucHJmCkBAIC04Niw2ICs4Niw3IEBAIGhhdmVRdCg0KTp1bml4OiFtYWM6IWVtYmVkZGVkIHsK
ICFjb250YWlucyhERUZJTkVTLCBFTkFCTEVfVklERU9fVFJBQ0s9Lik6IERFRklORVMgKz0gRU5B
QkxFX1ZJREVPX1RSQUNLPTAKICFjb250YWlucyhERUZJTkVTLCBFTkFCTEVfVE9VQ0hfSUNPTl9M
T0FESU5HPS4pOiBERUZJTkVTICs9IEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJTkc9MAogIWNvbnRh
aW5zKERFRklORVMsIEVOQUJMRV9BTklNQVRJT05fQVBJPS4pOiBERUZJTkVTICs9IEVOQUJMRV9B
TklNQVRJT05fQVBJPTAKKyFjb250YWlucyhERUZJTkVTLCBFTkFCTEVfUVRfSU1BR0VfREVDT0RF
Uj0uKTogREVGSU5FUyArPSBFTkFCTEVfUVRfSU1BR0VfREVDT0RFUj0xCiAKICMgRW5hYmxlZCBp
biBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL1BsYXRmb3JtLmggaWYgbm90IHNldAogIyBXZSBo
YXZlIHRvIGRvIHRoZSBzYW1lIHRvIGJlIGFibGUgdG8gZGlzYWJsZSB0aGUgZmVhdHVyZSBpbiBi
dWlsZC13ZWJraXQKQEAgLTIxNiw2ICsyMTcsMTAgQEAgY29udGFpbnMoREVGSU5FUywgRU5BQkxF
X0lOU1BFQ1RPUj0wKSB7CiAgICAgREVGSU5FUyArPSBFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dF
Uj0wCiB9CiAKK2NvbnRhaW5zKERFRklORVMsIEVOQUJMRV9RVF9JTUFHRV9ERUNPREVSPTApIHsK
KyAgICBERUZJTkVTICs9IFVTRV9XRUJQPTEKK30KKwogIyMgRm9yd2FyZCBlbmFibGVkIGZlYXR1
cmUgbWFjcm9zIHRvIEphdmFTY3JpcHQgZW5hYmxlZCBmZWF0dXJlcyBtYWNyb3MKIEZFQVRVUkVf
REVGSU5FU19KQVZBU0NSSVBUID0gTEFOR1VBR0VfSkFWQVNDUklQVD0xCiB2ODogRkVBVFVSRV9E
RUZJTkVTX0pBVkFTQ1JJUFQgKz0gVjhfQklORElORz0xCg==
</data>
<flag name="review"
          id="130466"
          type_id="1"
          status="-"
          setter="hausmann"
    />
    <flag name="commit-queue"
          id="130467"
          type_id="3"
          status="-"
          setter="hausmann"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>128446</attachid>
            <date>2012-02-23 02:51:38 -0800</date>
            <delta_ts>2012-02-24 03:04:08 -0800</delta_ts>
            <desc>Allow to use WebCore image decoders</desc>
            <filename>allowwebcoreimg2.patch</filename>
            <type>text/plain</type>
            <size>11595</size>
            <attacher name="Zoltan Horvath">zoltan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA1N2Q0NjhkLi43NzI3YjU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzkg
QEAKKzIwMTItMDItMjMgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtpdC5vcmc+CisKKyAg
ICAgICAgW1F0XSBBbGxvdyB0byB1c2UgV2ViQ29yZSBpbWFnZWRlY29kZXJzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMjQxMAorCisgICAgICAgIEFk
ZCBFTkFCTEUoUVRfSU1BR0VfREVDT0RFUikgZ3VhcmRzIGFyb3VuZCBRdCBpbWFnZWRlY29kZXJz
IGFuZCBzZXQgaXQgdG8gZGVmYXVsdC4KKyAgICAgICAgQnkgcGFzc2luZyBFTkFCTEVfUVRfSU1B
R0VfREVDT0RFUj0wIGRlZmluZSB0byB0aGUgYnVpbGQgc3lzdGVtIFdlYktpdCB3aWxsIGJ1aWxk
CisgICAgICAgIHdpdGggV2ViQ29yZSdzIGltYWdlZGVjb2RlcnMuCisKKyAgICAgICAgSSBhZGRl
ZCBOT19SRVRVUk4gYXR0cmlidXRlIHRvIDIgZnVuY3Rpb25zIG9mIFBORyBhbmQgSlBFRyBkZWNv
ZGVycyB0byBhdm9pZCBjb21waWxlciB3YXJuaW5ncworICAgICAgICBiZWNhdXNlIGluIFF0LXBv
cnQgd2UgdHJlYXQgd2FybmluZyBhcyBlcnJvcnMgKC1XZXJyb3IpLgorCisgICAgICAgIEknbSBj
b250aW51aW5nIHRoZSByZWZhY3RvcmluZyBvZiB0aGlzIGFyZWEgYW5kIHRyeSB0byB1c2UgUXQg
aW1hZ2VkZWNvZGVycyBvbmx5IGluIAorICAgICAgICBjYXNlcyB3aGVuIFdlYkNvcmUgZG9lc24n
dCBzdXBwb3J0IHRoZSBpbWFnZSBmb3JtYXQuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgTm8gYmVoYXZpb3IgY2hhbmdlLCBubyBuZWVkIG5ldyB0ZXN0
cy4KKworICAgICAgICAqIFRhcmdldC5wcmk6CisgICAgICAgICogV2ViQ29yZS5wcmk6CisgICAg
ICAgICogcGxhdGZvcm0vTUlNRVR5cGVSZWdpc3RyeS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpp
bml0aWFsaXplU3VwcG9ydGVkSW1hZ2VNSU1FVHlwZXMpOgorICAgICAgICAoV2ViQ29yZTo6aW5p
dGlhbGl6ZVN1cHBvcnRlZEltYWdlTUlNRVR5cGVzRm9yRW5jb2RpbmcpOgorICAgICAgICAqIHBs
YXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5oOgorICAgICAgICAoV2ViQ29yZTo6
SW1hZ2VGcmFtZTo6Z2V0QWRkcik6CisgICAgICAgIChJbWFnZUZyYW1lKToKKyAgICAgICAgKiBw
bGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJbWFnZURlY29kZXIuY3BwOgorICAgICAg
ICBOT19SRVRVUk4gaGFzIGJlZW4gYWRkZWQgdG8gYSBmdW5jdGlvbiB0byBhdm9pZCB3YXJuaW5n
IG1lc3NhZ2UuCisgICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcG5nL1BOR0ltYWdl
RGVjb2Rlci5jcHA6CisgICAgICAgIE5PX1JFVFVSTiBoYXMgYmVlbiBhZGRlZCB0byBhIGZ1bmN0
aW9uIHRvIGF2b2lkIHdhcm5pbmcgbWVzc2FnZS4KKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAg
ICAqIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3F0L0ltYWdlRnJhbWVRdC5jcHA6CisgICAgICAg
IChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6OkltYWdlRnJhbWU6OmFzTmV3TmF0aXZlSW1h
Z2UpOgorCiAyMDEyLTAyLTIyICBJZ29yIE9saXZlaXJhICA8aWdvci5vQHNpc2Euc2Ftc3VuZy5j
b20+CiAKICAgICAgICAgRXZlcnkgY2FsbCB0byBSZW5kZXJPYmplY3Q6OnNldEFuaW1hdGFibGVT
dHlsZSgpIGl0ZXJhdGVzIHRocm91Z2ggYWxsIG1fY29tcG9zaXRlQW5pbWF0aW9uczogcG90ZW50
aWFsbHkgTyhOXjIpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpIGIvU291
cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQppbmRleCA5Y2NlMDM1Li45ZTU2N2JjIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCisrKyBiL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5w
cmkKQEAgLTIxOTEsNyArMjE5MSw2IEBAIEhFQURFUlMgKz0gXAogICAgIHBsYXRmb3JtL2dyYXBo
aWNzL1JlZ2lvbi5oIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9Sb3VuZGVkUmVjdC5oIFwKICAg
ICBwbGF0Zm9ybS9ncmFwaGljcy9xdC9Gb250Q3VzdG9tUGxhdGZvcm1EYXRhLmggXAotICAgIHBs
YXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlRGVjb2RlclF0LmggXAogICAgIHBsYXRmb3JtL2dyYXBo
aWNzL3F0L1N0aWxsSW1hZ2VRdC5oIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9xdC9UcmFuc3Bh
cmVuY3lMYXllci5oIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9TZWdtZW50ZWRGb250RGF0YS5o
IFwKQEAgLTI4MDIsNyArMjgwMSw2IEBAIFNPVVJDRVMgKz0gXAogICAgIHBsYXRmb3JtL2dyYXBo
aWNzL3F0L0dyYXBoaWNzQ29udGV4dFF0LmNwcCBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQv
SWNvblF0LmNwcCBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VCdWZmZXJRdC5jcHAg
XAotICAgIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlRGVjb2RlclF0LmNwcCBcCiAgICAgcGxh
dGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VRdC5jcHAgXAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3F0
L0ludFBvaW50UXQuY3BwIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9xdC9JbnRSZWN0UXQuY3Bw
IFwKQEAgLTM5MzgsNiArMzkzNiwzNSBAQCBjb250YWlucyhERUZJTkVTLCBFTkFCTEVfTUhUTUw9
MSkgewogICAgICAgICBwYWdlL1BhZ2VTZXJpYWxpemVyLmNwcAogfQogCitjb250YWlucyhERUZJ
TkVTLCBFTkFCTEVfUVRfSU1BR0VfREVDT0RFUj0xKSB7CisgICAgSEVBREVSUyArPSBwbGF0Zm9y
bS9ncmFwaGljcy9xdC9JbWFnZURlY29kZXJRdC5oCisgICAgU09VUkNFUyArPSBwbGF0Zm9ybS9n
cmFwaGljcy9xdC9JbWFnZURlY29kZXJRdC5jcHAKK30gZWxzZSB7CisgICAgSEVBREVSUyArPSBc
CisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2JtcC9CTVBJbWFnZURlY29kZXIuaCBc
CisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2JtcC9CTVBJbWFnZVJlYWRlci5oIFwK
KyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5oIFwK
KyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlUmVhZGVyLmhcCisg
ICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2ljby9JQ09JbWFnZURlY29kZXIuaCBcCisg
ICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pwZWcvSlBFR0ltYWdlRGVjb2Rlci5oIFwK
KyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcG5nL1BOR0ltYWdlRGVjb2Rlci5oCisK
KyAgICBTT1VSQ0VTICs9IFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvSW1hZ2VE
ZWNvZGVyLmNwcCBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2JtcC9CTVBJbWFn
ZURlY29kZXIuY3BwIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvYm1wL0JNUElt
YWdlUmVhZGVyLmNwcCBcCisgICAgICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2dpZi9HSUZJ
bWFnZURlY29kZXIuY3BwIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJ
RkltYWdlUmVhZGVyLmNwcFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvaWNvL0lD
T0ltYWdlRGVjb2Rlci5jcHAgXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVn
L0pQRUdJbWFnZURlY29kZXIuY3BwIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMv
cG5nL1BOR0ltYWdlRGVjb2Rlci5jcHAKKworICAgIGNvbnRhaW5zKERFRklORVMsIFdURl9VU0Vf
V0VCUD0xKSB7CisgICAgICAgIEhFQURFUlMgKz0gcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvd2Vi
cC9XRUJQSW1hZ2VEZWNvZGVyLmgKKyAgICAgICAgU09VUkNFUyArPSBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy93ZWJwL1dFQlBJbWFnZURlY29kZXIuY3BwCisgICAgfQorfQorCiAhc3lzdGVtLXNx
bGl0ZTpleGlzdHMoICQke1NRTElURTNTUkNESVJ9L3NxbGl0ZTMuYyApIHsKICAgICAjIEJ1aWxk
IHNxbGl0ZTMgaW50byBXZWJDb3JlIGZyb20gc291cmNlCiAgICAgIyBzb21ld2hhdCBjb3BpZWQg
ZnJvbSAkJFFUX1NPVVJDRV9UUkVFL3NyYy9wbHVnaW5zL3NxbGRyaXZlcnMvc3FsaXRlL3NxbGl0
ZS5wcm8KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUucHJpIGIvU291cmNlL1dl
YkNvcmUvV2ViQ29yZS5wcmkKaW5kZXggYWY5OTQxYS4uYTNiN2JlNCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5wcmkKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5wcmkK
QEAgLTIwMyw2ICsyMDMsMjIgQEAgY29udGFpbnMoQ09ORklHLCB0ZXhtYXApIHsKICAgICBMSUJT
ICs9IC1sc3FsaXRlMwogfQogCitjb250YWlucyhERUZJTkVTLCBFTkFCTEVfUVRfSU1BR0VfREVD
T0RFUj0wKSB7CisgICAgSU5DTFVERVBBVEggKz0gXAorICAgICAgICAkJFNPVVJDRV9ESVIvcGxh
dGZvcm0vaW1hZ2UtZGVjb2RlcnMvYm1wIFwKKyAgICAgICAgJCRTT1VSQ0VfRElSL3BsYXRmb3Jt
L2ltYWdlLWRlY29kZXJzL2dpZiBcCisgICAgICAgICQkU09VUkNFX0RJUi9wbGF0Zm9ybS9pbWFn
ZS1kZWNvZGVycy9pY28gXAorICAgICAgICAkJFNPVVJDRV9ESVIvcGxhdGZvcm0vaW1hZ2UtZGVj
b2RlcnMvanBlZyBcCisgICAgICAgICQkU09VUkNFX0RJUi9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVy
cy9wbmcKKworICAgIExJQlMgKz0gLWxqcGVnIC1scG5nMTIKKworICAgIGNvbnRhaW5zKERFRklO
RVMsIFdURl9VU0VfV0VCUD0xKSB7CisgICAgICAgIElOQ0xVREVQQVRIICs9ICQkU09VUkNFX0RJ
Ui9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy93ZWJwCisgICAgICAgIExJQlMgKz0gLWx3ZWJwCisg
ICAgfQorfQorCiB3aW4zMi0qfHdpbmNlKiB7CiAgICAgRExMREVTVERJUiA9ICQke1JPT1RfQlVJ
TERfRElSfS9iaW4KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTUlNRVR5
cGVSZWdpc3RyeS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9NSU1FVHlwZVJlZ2lzdHJ5
LmNwcAppbmRleCBiNWYyZDQ1Li5jYmIwYWFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9NSU1FVHlwZVJlZ2lzdHJ5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9NSU1FVHlwZVJlZ2lzdHJ5LmNwcApAQCAtMzksNyArMzksNyBAQAogI2luY2x1ZGUgPEFwcGxp
Y2F0aW9uU2VydmljZXMvQXBwbGljYXRpb25TZXJ2aWNlcy5oPgogI2luY2x1ZGUgPHd0Zi9SZXRh
aW5QdHIuaD4KICNlbmRpZgotI2lmIFBMQVRGT1JNKFFUKQorI2lmIFBMQVRGT1JNKFFUKSAmJiBF
TkFCTEUoUVRfSU1BR0VfREVDT0RFUikKICNpbmNsdWRlIDxxaW1hZ2VyZWFkZXIuaD4KICNpbmNs
dWRlIDxxaW1hZ2V3cml0ZXIuaD4KICNlbmRpZgpAQCAtMjI5LDcgKzIyOSw3IEBAIHN0YXRpYyB2
b2lkIGluaXRpYWxpemVTdXBwb3J0ZWRJbWFnZU1JTUVUeXBlcygpCiAgICAgc3VwcG9ydGVkSW1h
Z2VNSU1FVHlwZXMtPnJlbW92ZSgiYXBwbGljYXRpb24vcGRmIik7CiAgICAgc3VwcG9ydGVkSW1h
Z2VNSU1FVHlwZXMtPnJlbW92ZSgiYXBwbGljYXRpb24vcG9zdHNjcmlwdCIpOwogCi0jZWxpZiBQ
TEFURk9STShRVCkKKyNlbGlmIFBMQVRGT1JNKFFUKSAmJiBFTkFCTEUoUVRfSU1BR0VfREVDT0RF
UikKICAgICBRTGlzdDxRQnl0ZUFycmF5PiBmb3JtYXRzID0gUUltYWdlUmVhZGVyOjpzdXBwb3J0
ZWRJbWFnZUZvcm1hdHMoKTsKICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHN0YXRpY19jYXN0
PHNpemVfdD4oZm9ybWF0cy5zaXplKCkpOyArK2kpIHsKICNpZiBFTkFCTEUoU1ZHKQpAQCAtMjg5
LDcgKzI4OSw3IEBAIHN0YXRpYyB2b2lkIGluaXRpYWxpemVTdXBwb3J0ZWRJbWFnZU1JTUVUeXBl
c0ZvckVuY29kaW5nKCkKICAgICBzdXBwb3J0ZWRJbWFnZU1JTUVUeXBlc0ZvckVuY29kaW5nLT5h
ZGQoImltYWdlL2pwZWciKTsKICAgICBzdXBwb3J0ZWRJbWFnZU1JTUVUeXBlc0ZvckVuY29kaW5n
LT5hZGQoImltYWdlL2dpZiIpOwogI2VuZGlmCi0jZWxpZiBQTEFURk9STShRVCkKKyNlbGlmIFBM
QVRGT1JNKFFUKSAmJiBFTkFCTEUoUVRfSU1BR0VfREVDT0RFUikKICAgICBRTGlzdDxRQnl0ZUFy
cmF5PiBmb3JtYXRzID0gUUltYWdlV3JpdGVyOjpzdXBwb3J0ZWRJbWFnZUZvcm1hdHMoKTsKICAg
ICBmb3IgKGludCBpID0gMDsgaSA8IGZvcm1hdHMuc2l6ZSgpOyArK2kpIHsKICAgICAgICAgU3Ry
aW5nIG1pbWVUeXBlID0gTUlNRVR5cGVSZWdpc3RyeTo6Z2V0TUlNRVR5cGVGb3JFeHRlbnNpb24o
Zm9ybWF0cy5hdChpKS5jb25zdERhdGEoKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29kZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5oCmluZGV4IDlkOWIzNGYuLjI5MTBh
NWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0lt
YWdlRGVjb2Rlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJz
L0ltYWdlRGVjb2Rlci5oCkBAIC02NCw3ICs2NCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAg
ICAgICAgICAgIERpc3Bvc2VPdmVyd3JpdGVQcmV2aW91cyAgLy8gQ2xlYXIgZnJhbWUgdG8gcHJl
dmlvdXMgZnJhbWVidWZmZXIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
Ly8gY29udGVudHMKICAgICAgICAgfTsKLSNpZiBVU0UoU0tJQSkgfHwgUExBVEZPUk0oUVQpCisj
aWYgVVNFKFNLSUEpIHx8IChQTEFURk9STShRVCkgJiYgRU5BQkxFKFFUX0lNQUdFX0RFQ09ERVIp
KQogICAgICAgICB0eXBlZGVmIHVpbnQzMl90IFBpeGVsRGF0YTsKICNlbHNlCiAgICAgICAgIHR5
cGVkZWYgdW5zaWduZWQgUGl4ZWxEYXRhOwpAQCAtMTQwLDcgKzE0MCw3IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICAgICAgewogI2lmIFVTRShTS0lBKQogICAgICAgICAgICAgcmV0dXJuIG1f
Yml0bWFwLmJpdG1hcCgpLmdldEFkZHIzMih4LCB5KTsKLSNlbGlmIFBMQVRGT1JNKFFUKQorI2Vs
aWYgUExBVEZPUk0oUVQpICYmIEVOQUJMRShRVF9JTUFHRV9ERUNPREVSKQogICAgICAgICAgICAg
bV9pbWFnZSA9IG1fcGl4bWFwLnRvSW1hZ2UoKTsKICAgICAgICAgICAgIG1fcGl4bWFwID0gUVBp
eG1hcCgpOwogICAgICAgICAgICAgcmV0dXJuIHJlaW50ZXJwcmV0X2Nhc3RfcHRyPFFSZ2IqPiht
X2ltYWdlLnNjYW5MaW5lKHkpKSArIHg7CkBAIC0xNDksNyArMTQ5LDcgQEAgbmFtZXNwYWNlIFdl
YkNvcmUgewogI2VuZGlmCiAgICAgICAgIH0KIAotI2lmIFBMQVRGT1JNKFFUKQorI2lmIFBMQVRG
T1JNKFFUKSAmJiBFTkFCTEUoUVRfSU1BR0VfREVDT0RFUikKICAgICAgICAgdm9pZCBzZXRQaXht
YXAoY29uc3QgUVBpeG1hcCYgcGl4bWFwKTsKICNlbmRpZgogCkBAIC0xOTAsNyArMTkwLDcgQEAg
bmFtZXNwYWNlIFdlYkNvcmUgewogI2lmIFBMQVRGT1JNKENIUk9NSVVNKSAmJiBPUyhEQVJXSU4p
CiAgICAgICAgIENvbG9yUHJvZmlsZSBtX2NvbG9yUHJvZmlsZTsKICNlbmRpZgotI2VsaWYgUExB
VEZPUk0oUVQpCisjZWxpZiBQTEFURk9STShRVCkgJiYgRU5BQkxFKFFUX0lNQUdFX0RFQ09ERVIp
CiAgICAgICAgIG11dGFibGUgUVBpeG1hcCBtX3BpeG1hcDsKICAgICAgICAgbXV0YWJsZSBRSW1h
Z2UgbV9pbWFnZTsKICAgICAgICAgYm9vbCBtX2hhc0FscGhhOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pwZWcvSlBFR0ltYWdl
RGVjb2Rlci5jcHAKaW5kZXggZjBmYmU0NC4uYWQ3YTdiMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJbWFn
ZURlY29kZXIuY3BwCkBAIC0xMDMsNyArMTAzLDcgQEAgdm9pZCBpbml0X3NvdXJjZShqX2RlY29t
cHJlc3NfcHRyIGpkKTsKIGJvb2xlYW4gZmlsbF9pbnB1dF9idWZmZXIoal9kZWNvbXByZXNzX3B0
ciBqZCk7CiB2b2lkIHNraXBfaW5wdXRfZGF0YShqX2RlY29tcHJlc3NfcHRyIGpkLCBsb25nIG51
bV9ieXRlcyk7CiB2b2lkIHRlcm1fc291cmNlKGpfZGVjb21wcmVzc19wdHIgamQpOwotdm9pZCBl
cnJvcl9leGl0KGpfY29tbW9uX3B0ciBjaW5mbyk7Cit2b2lkIGVycm9yX2V4aXQoal9jb21tb25f
cHRyIGNpbmZvKSBOT19SRVRVUk47CiAKIC8vIEltcGxlbWVudGF0aW9uIG9mIGEgSlBFRyBzcmMg
b2JqZWN0IHRoYXQgdW5kZXJzdGFuZHMgb3VyIHN0YXRlIG1hY2hpbmUKIHN0cnVjdCBkZWNvZGVy
X3NvdXJjZV9tZ3IgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2Ut
ZGVjb2RlcnMvcG5nL1BOR0ltYWdlRGVjb2Rlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcAppbmRleCBjNTBlYmU5Li42
NjUxNGI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVy
cy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
bWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcApAQCAtNjQsNiArNjQsNyBAQCBj
b25zdCBkb3VibGUgY0ludmVyc2VHYW1tYSA9IDAuNDU0NTU7CiBjb25zdCB1bnNpZ25lZCBsb25n
IGNNYXhQTkdTaXplID0gMTAwMDAwMFVMOwogCiAvLyBDYWxsZWQgaWYgdGhlIGRlY29kaW5nIG9m
IHRoZSBpbWFnZSBmYWlscy4KK3N0YXRpYyB2b2lkIFBOR0FQSSBkZWNvZGluZ0ZhaWxlZChwbmdf
c3RydWN0cCBwbmcsIHBuZ19jb25zdF9jaGFycCkgTk9fUkVUVVJOOwogc3RhdGljIHZvaWQgUE5H
QVBJIGRlY29kaW5nRmFpbGVkKHBuZ19zdHJ1Y3RwIHBuZywgcG5nX2NvbnN0X2NoYXJwKQogewog
ICAgIGxvbmdqbXAoSk1QQlVGKHBuZyksIDEpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcXQvSW1hZ2VGcmFtZVF0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3F0L0ltYWdlRnJhbWVRdC5jcHAKaW5kZXggMWVh
ZDlhOS4uMjczYjA5YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2Ut
ZGVjb2RlcnMvcXQvSW1hZ2VGcmFtZVF0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9pbWFnZS1kZWNvZGVycy9xdC9JbWFnZUZyYW1lUXQuY3BwCkBAIC0zMCwxMSArMzAsMjUgQEAK
IAogI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCiAKLSNpbmNsdWRlIDxRUGl4bWFwPgotI2lu
Y2x1ZGUgPHN0ZGlvLmg+Ci0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmICFFTkFCTEUoUVRf
SU1BR0VfREVDT0RFUikKKworUVBpeG1hcCogSW1hZ2VGcmFtZTo6YXNOZXdOYXRpdmVJbWFnZSgp
IGNvbnN0Cit7CisgICAgUUltYWdlOjpGb3JtYXQgZm10OworICAgIGlmIChtX2hhc0FscGhhKQor
ICAgICAgICBmbXQgPSBtX3ByZW11bHRpcGx5QWxwaGEgPyAgUUltYWdlOjpGb3JtYXRfQVJHQjMy
X1ByZW11bHRpcGxpZWQgOiBRSW1hZ2U6OkZvcm1hdF9BUkdCMzI7CisgICAgZWxzZQorICAgICAg
ICBmbXQgPSBRSW1hZ2U6OkZvcm1hdF9SR0IzMjsKKworICAgIFFJbWFnZSBpbWcocmVpbnRlcnBy
ZXRfY2FzdDx1Y2hhcio+KG1fYnl0ZXMpLCBtX3NpemUud2lkdGgoKSwgbV9zaXplLmhlaWdodCgp
LCBzaXplb2YoUGl4ZWxEYXRhKSAqIG1fc2l6ZS53aWR0aCgpLCBmbXQpOworCisgICAgcmV0dXJu
IG5ldyBRUGl4bWFwKFFQaXhtYXA6OmZyb21JbWFnZShpbWcpKTsKK30KKworI2Vsc2UKKwogSW1h
Z2VGcmFtZTo6SW1hZ2VGcmFtZSgpCiAgICAgOiBtX2hhc0FscGhhKGZhbHNlKSAKICAgICAsIG1f
c2l6ZSgpCkBAIC0xNTQsNCArMTY4LDYgQEAgaW50IEltYWdlRnJhbWU6OmhlaWdodCgpIGNvbnN0
CiAgICAgcmV0dXJuIG1fc2l6ZS5oZWlnaHQoKTsKIH0KIAorI2VuZGlmCisKIH0KZGlmZiAtLWdp
dCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBmZTM0NzIwLi42OTI3
NjA3IDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMTItMDItMjMgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgW1F0XSBBbGxvdyB0byB1c2UgV2ViQ29yZSBpbWFnZWRlY29kZXJz
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMjQxMAor
CisgICAgICAgIEFkZCBFTkFCTEVfUVRfSU1BR0VfREVDT0RFUiBtYWNybywgaXQncyBlbmFibGVk
IGJ5IGRlZmF1bHQuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBxbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL2ZlYXR1cmVzLnByZjoKKwogMjAxMi0wMi0y
MyAgUGhpbGlwcGUgTm9ybWFuZCAgPHBub3JtYW5kQGlnYWxpYS5jb20+CiAKICAgICAgICAgW0dU
S10gRnVsbFNjcmVlbiBzaWduYWxzCmRpZmYgLS1naXQgYS9Ub29scy9xbWFrZS9ta3NwZWNzL2Zl
YXR1cmVzL2ZlYXR1cmVzLnByZiBiL1Rvb2xzL3FtYWtlL21rc3BlY3MvZmVhdHVyZXMvZmVhdHVy
ZXMucHJmCmluZGV4IGVhNzMxZTQuLmE5YjgyOWMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL3FtYWtlL21r
c3BlY3MvZmVhdHVyZXMvZmVhdHVyZXMucHJmCisrKyBiL1Rvb2xzL3FtYWtlL21rc3BlY3MvZmVh
dHVyZXMvZmVhdHVyZXMucHJmCkBAIC04Niw2ICs4Niw3IEBAIGhhdmVRdCg0KTp1bml4OiFtYWM6
IWVtYmVkZGVkIHsKICFjb250YWlucyhERUZJTkVTLCBFTkFCTEVfVklERU9fVFJBQ0s9Lik6IERF
RklORVMgKz0gRU5BQkxFX1ZJREVPX1RSQUNLPTAKICFjb250YWlucyhERUZJTkVTLCBFTkFCTEVf
VE9VQ0hfSUNPTl9MT0FESU5HPS4pOiBERUZJTkVTICs9IEVOQUJMRV9UT1VDSF9JQ09OX0xPQURJ
Tkc9MAogIWNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9BTklNQVRJT05fQVBJPS4pOiBERUZJTkVT
ICs9IEVOQUJMRV9BTklNQVRJT05fQVBJPTAKKyFjb250YWlucyhERUZJTkVTLCBFTkFCTEVfUVRf
SU1BR0VfREVDT0RFUj0uKTogREVGSU5FUyArPSBFTkFCTEVfUVRfSU1BR0VfREVDT0RFUj0xCiAK
ICMgRW5hYmxlZCBpbiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvd3RmL1BsYXRmb3JtLmggaWYgbm90
IHNldAogIyBXZSBoYXZlIHRvIGRvIHRoZSBzYW1lIHRvIGJlIGFibGUgdG8gZGlzYWJsZSB0aGUg
ZmVhdHVyZSBpbiBidWlsZC13ZWJraXQK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>128697</attachid>
            <date>2012-02-24 03:04:08 -0800</date>
            <delta_ts>2012-02-24 06:03:36 -0800</delta_ts>
            <desc>proposed patch - the change will not affect on other ports</desc>
            <filename>allowwebcoreimg3.patch</filename>
            <type>text/plain</type>
            <size>12220</size>
            <attacher name="Zoltan Horvath">zoltan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA1N2Q0NjhkLi44N2Y5NDI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzkg
QEAKKzIwMTItMDItMjMgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtpdC5vcmc+CisKKyAg
ICAgICAgW1F0XSBBbGxvdyB0byB1c2UgV2ViQ29yZSBpbWFnZWRlY29kZXJzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMjQxMAorCisgICAgICAgIEFk
ZCBFTkFCTEUoUVRfSU1BR0VfREVDT0RFUikgZ3VhcmRzIGFyb3VuZCBRdCBpbWFnZWRlY29kZXJz
IGFuZCBzZXQgaXQgdG8gZGVmYXVsdC4KKyAgICAgICAgQnkgcGFzc2luZyBFTkFCTEVfUVRfSU1B
R0VfREVDT0RFUj0wIGRlZmluZSB0byB0aGUgYnVpbGQgc3lzdGVtLCBXZWJLaXQgd2lsbCBidWls
ZAorICAgICAgICB3aXRoIFdlYkNvcmUncyBpbWFnZWRlY29kZXJzLgorCisgICAgICAgIEkgYWRk
ZWQgTk9fUkVUVVJOIGF0dHJpYnV0ZSBhbmQgUExBVEZPUk0oUVQpIGNvbmRpdGlvbmFscyB0byAy
IGZ1bmN0aW9ucyBvZiBQTkcgYW5kIAorICAgICAgICBKUEVHIGRlY29kZXJzIHRvIGF2b2lkIGNv
bXBpbGVyIHdhcm5pbmdzIGJlY2F1c2UgaW4gUXQtcG9ydCB3ZSB0cmVhdCB3YXJuaW5nIGFzIGVy
cm9ycyAoLVdlcnJvcikuCisKKyAgICAgICAgSSdtIGNvbnRpbnVpbmcgdGhlIHJlZmFjdG9yaW5n
IG9mIHRoaXMgYXJlYSBhbmQgdHJ5IHRvIHVzZSBRdCBpbWFnZWRlY29kZXJzIG9ubHkgaW4gCisg
ICAgICAgIGNhc2VzIHdoZW4gV2ViQ29yZSBkb2Vzbid0IHN1cHBvcnQgdGhlIGltYWdlIGZvcm1h
dC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBi
ZWhhdmlvciBjaGFuZ2UsIG5vIG5lZWQgbmV3IHRlc3RzLgorCisgICAgICAgICogVGFyZ2V0LnBy
aToKKyAgICAgICAgKiBXZWJDb3JlLnByaToKKyAgICAgICAgKiBwbGF0Zm9ybS9NSU1FVHlwZVJl
Z2lzdHJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmluaXRpYWxpemVTdXBwb3J0ZWRJbWFnZU1J
TUVUeXBlcyk6CisgICAgICAgIChXZWJDb3JlOjppbml0aWFsaXplU3VwcG9ydGVkSW1hZ2VNSU1F
VHlwZXNGb3JFbmNvZGluZyk6CisgICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvSW1h
Z2VEZWNvZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZUZyYW1lOjpnZXRBZGRyKToKKyAg
ICAgICAgKEltYWdlRnJhbWUpOgorICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pw
ZWcvSlBFR0ltYWdlRGVjb2Rlci5jcHA6CisgICAgICAgIE5PX1JFVFVSTiBoYXMgYmVlbiBhZGRl
ZCB0byBhIGZ1bmN0aW9uIHRvIGF2b2lkIHdhcm5pbmcgbWVzc2FnZS4KKyAgICAgICAgKiBwbGF0
Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcDoKKyAgICAgICAgTk9f
UkVUVVJOIGhhcyBiZWVuIGFkZGVkIHRvIGEgZnVuY3Rpb24gdG8gYXZvaWQgd2FybmluZyBtZXNz
YWdlLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2Rl
cnMvcXQvSW1hZ2VGcmFtZVF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW1hZ2VGcmFtZTo6YXNOZXdOYXRpdmVJbWFnZSk6CisKIDIwMTItMDItMjIgIElnb3Ig
T2xpdmVpcmEgIDxpZ29yLm9Ac2lzYS5zYW1zdW5nLmNvbT4KIAogICAgICAgICBFdmVyeSBjYWxs
IHRvIFJlbmRlck9iamVjdDo6c2V0QW5pbWF0YWJsZVN0eWxlKCkgaXRlcmF0ZXMgdGhyb3VnaCBh
bGwgbV9jb21wb3NpdGVBbmltYXRpb25zOiBwb3RlbnRpYWxseSBPKE5eMikKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCmlu
ZGV4IDljY2UwMzUuLjllNTY3YmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5w
cmkKKysrIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQpAQCAtMjE5MSw3ICsyMTkxLDYgQEAg
SEVBREVSUyArPSBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvUmVnaW9uLmggXAogICAgIHBsYXRm
b3JtL2dyYXBoaWNzL1JvdW5kZWRSZWN0LmggXAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0Zv
bnRDdXN0b21QbGF0Zm9ybURhdGEuaCBcCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VE
ZWNvZGVyUXQuaCBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvU3RpbGxJbWFnZVF0LmggXAog
ICAgIHBsYXRmb3JtL2dyYXBoaWNzL3F0L1RyYW5zcGFyZW5jeUxheWVyLmggXAogICAgIHBsYXRm
b3JtL2dyYXBoaWNzL1NlZ21lbnRlZEZvbnREYXRhLmggXApAQCAtMjgwMiw3ICsyODAxLDYgQEAg
U09VUkNFUyArPSBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0UXQu
Y3BwIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9xdC9JY29uUXQuY3BwIFwKICAgICBwbGF0Zm9y
bS9ncmFwaGljcy9xdC9JbWFnZUJ1ZmZlclF0LmNwcCBcCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3Mv
cXQvSW1hZ2VEZWNvZGVyUXQuY3BwIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZVF0
LmNwcCBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW50UG9pbnRRdC5jcHAgXAogICAgIHBs
YXRmb3JtL2dyYXBoaWNzL3F0L0ludFJlY3RRdC5jcHAgXApAQCAtMzkzOCw2ICszOTM2LDM1IEBA
IGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9NSFRNTD0xKSB7CiAgICAgICAgIHBhZ2UvUGFnZVNl
cmlhbGl6ZXIuY3BwCiB9CiAKK2NvbnRhaW5zKERFRklORVMsIEVOQUJMRV9RVF9JTUFHRV9ERUNP
REVSPTEpIHsKKyAgICBIRUFERVJTICs9IHBsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlRGVjb2Rl
clF0LmgKKyAgICBTT1VSQ0VTICs9IHBsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlRGVjb2RlclF0
LmNwcAorfSBlbHNlIHsKKyAgICBIRUFERVJTICs9IFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2Ut
ZGVjb2RlcnMvYm1wL0JNUEltYWdlRGVjb2Rlci5oIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2Ut
ZGVjb2RlcnMvYm1wL0JNUEltYWdlUmVhZGVyLmggXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9naWYvR0lGSW1hZ2VEZWNvZGVyLmggXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9naWYvR0lGSW1hZ2VSZWFkZXIuaFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVj
b2RlcnMvaWNvL0lDT0ltYWdlRGVjb2Rlci5oIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVj
b2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmggXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmgKKworICAgIFNPVVJDRVMgKz0gXAorICAgICAg
ICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29kZXIuY3BwIFwKKyAgICAgICAgcGxh
dGZvcm0vaW1hZ2UtZGVjb2RlcnMvYm1wL0JNUEltYWdlRGVjb2Rlci5jcHAgXAorICAgICAgICBw
bGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9ibXAvQk1QSW1hZ2VSZWFkZXIuY3BwIFwKKyAgICAgICAg
cGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5jcHAgXAorICAgICAg
ICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1hZ2VSZWFkZXIuY3BwXAorICAgICAg
ICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9pY28vSUNPSW1hZ2VEZWNvZGVyLmNwcCBcCisgICAg
ICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pwZWcvSlBFR0ltYWdlRGVjb2Rlci5jcHAgXAor
ICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcAor
CisgICAgY29udGFpbnMoREVGSU5FUywgV1RGX1VTRV9XRUJQPTEpIHsKKyAgICAgICAgSEVBREVS
UyArPSBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy93ZWJwL1dFQlBJbWFnZURlY29kZXIuaAorICAg
ICAgICBTT1VSQ0VTICs9IHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3dlYnAvV0VCUEltYWdlRGVj
b2Rlci5jcHAKKyAgICB9Cit9CisKICFzeXN0ZW0tc3FsaXRlOmV4aXN0cyggJCR7U1FMSVRFM1NS
Q0RJUn0vc3FsaXRlMy5jICkgewogICAgICMgQnVpbGQgc3FsaXRlMyBpbnRvIFdlYkNvcmUgZnJv
bSBzb3VyY2UKICAgICAjIHNvbWV3aGF0IGNvcGllZCBmcm9tICQkUVRfU09VUkNFX1RSRUUvc3Jj
L3BsdWdpbnMvc3FsZHJpdmVycy9zcWxpdGUvc3FsaXRlLnBybwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS5wcmkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnByaQppbmRleCBh
Zjk5NDFhLi5hM2I3YmU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnByaQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnByaQpAQCAtMjAzLDYgKzIwMywyMiBAQCBjb250
YWlucyhDT05GSUcsIHRleG1hcCkgewogICAgIExJQlMgKz0gLWxzcWxpdGUzCiB9CiAKK2NvbnRh
aW5zKERFRklORVMsIEVOQUJMRV9RVF9JTUFHRV9ERUNPREVSPTApIHsKKyAgICBJTkNMVURFUEFU
SCArPSBcCisgICAgICAgICQkU09VUkNFX0RJUi9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9ibXAg
XAorICAgICAgICAkJFNPVVJDRV9ESVIvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmIFwKKyAg
ICAgICAgJCRTT1VSQ0VfRElSL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2ljbyBcCisgICAgICAg
ICQkU09VUkNFX0RJUi9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnIFwKKyAgICAgICAgJCRT
T1VSQ0VfRElSL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3BuZworCisgICAgTElCUyArPSAtbGpw
ZWcgLWxwbmcxMgorCisgICAgY29udGFpbnMoREVGSU5FUywgV1RGX1VTRV9XRUJQPTEpIHsKKyAg
ICAgICAgSU5DTFVERVBBVEggKz0gJCRTT1VSQ0VfRElSL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJz
L3dlYnAKKyAgICAgICAgTElCUyArPSAtbHdlYnAKKyAgICB9Cit9CisKIHdpbjMyLSp8d2luY2Uq
IHsKICAgICBETExERVNURElSID0gJCR7Uk9PVF9CVUlMRF9ESVJ9L2JpbgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9NSU1FVHlwZVJlZ2lzdHJ5LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL01JTUVUeXBlUmVnaXN0cnkuY3BwCmluZGV4IGI1ZjJkNDUuLmNiYjBh
YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL01JTUVUeXBlUmVnaXN0cnku
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL01JTUVUeXBlUmVnaXN0cnkuY3BwCkBA
IC0zOSw3ICszOSw3IEBACiAjaW5jbHVkZSA8QXBwbGljYXRpb25TZXJ2aWNlcy9BcHBsaWNhdGlv
blNlcnZpY2VzLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCi0jaWYgUExB
VEZPUk0oUVQpCisjaWYgUExBVEZPUk0oUVQpICYmIEVOQUJMRShRVF9JTUFHRV9ERUNPREVSKQog
I2luY2x1ZGUgPHFpbWFnZXJlYWRlci5oPgogI2luY2x1ZGUgPHFpbWFnZXdyaXRlci5oPgogI2Vu
ZGlmCkBAIC0yMjksNyArMjI5LDcgQEAgc3RhdGljIHZvaWQgaW5pdGlhbGl6ZVN1cHBvcnRlZElt
YWdlTUlNRVR5cGVzKCkKICAgICBzdXBwb3J0ZWRJbWFnZU1JTUVUeXBlcy0+cmVtb3ZlKCJhcHBs
aWNhdGlvbi9wZGYiKTsKICAgICBzdXBwb3J0ZWRJbWFnZU1JTUVUeXBlcy0+cmVtb3ZlKCJhcHBs
aWNhdGlvbi9wb3N0c2NyaXB0Iik7CiAKLSNlbGlmIFBMQVRGT1JNKFFUKQorI2VsaWYgUExBVEZP
Uk0oUVQpICYmIEVOQUJMRShRVF9JTUFHRV9ERUNPREVSKQogICAgIFFMaXN0PFFCeXRlQXJyYXk+
IGZvcm1hdHMgPSBRSW1hZ2VSZWFkZXI6OnN1cHBvcnRlZEltYWdlRm9ybWF0cygpOwogICAgIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgc3RhdGljX2Nhc3Q8c2l6ZV90Pihmb3JtYXRzLnNpemUoKSk7
ICsraSkgewogI2lmIEVOQUJMRShTVkcpCkBAIC0yODksNyArMjg5LDcgQEAgc3RhdGljIHZvaWQg
aW5pdGlhbGl6ZVN1cHBvcnRlZEltYWdlTUlNRVR5cGVzRm9yRW5jb2RpbmcoKQogICAgIHN1cHBv
cnRlZEltYWdlTUlNRVR5cGVzRm9yRW5jb2RpbmctPmFkZCgiaW1hZ2UvanBlZyIpOwogICAgIHN1
cHBvcnRlZEltYWdlTUlNRVR5cGVzRm9yRW5jb2RpbmctPmFkZCgiaW1hZ2UvZ2lmIik7CiAjZW5k
aWYKLSNlbGlmIFBMQVRGT1JNKFFUKQorI2VsaWYgUExBVEZPUk0oUVQpICYmIEVOQUJMRShRVF9J
TUFHRV9ERUNPREVSKQogICAgIFFMaXN0PFFCeXRlQXJyYXk+IGZvcm1hdHMgPSBRSW1hZ2VXcml0
ZXI6OnN1cHBvcnRlZEltYWdlRm9ybWF0cygpOwogICAgIGZvciAoaW50IGkgPSAwOyBpIDwgZm9y
bWF0cy5zaXplKCk7ICsraSkgewogICAgICAgICBTdHJpbmcgbWltZVR5cGUgPSBNSU1FVHlwZVJl
Z2lzdHJ5OjpnZXRNSU1FVHlwZUZvckV4dGVuc2lvbihmb3JtYXRzLmF0KGkpLmNvbnN0RGF0YSgp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0lt
YWdlRGVjb2Rlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9J
bWFnZURlY29kZXIuY3BwCmluZGV4IDM0Y2FmMGEuLmQ5ZTk2OTAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvSW1hZ2VEZWNvZGVyLmNwcApA
QCAtMzEsNyArMzEsOSBAQAogI2luY2x1ZGUgIklDT0ltYWdlRGVjb2Rlci5oIgogI2luY2x1ZGUg
IkpQRUdJbWFnZURlY29kZXIuaCIKICNpbmNsdWRlICJQTkdJbWFnZURlY29kZXIuaCIKKyNpZiBV
U0UoV0VCUCkKICNpbmNsdWRlICJXRUJQSW1hZ2VEZWNvZGVyLmgiCisjZW5kaWYKICNpbmNsdWRl
ICJTaGFyZWRCdWZmZXIuaCIKIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvSW1hZ2VEZWNvZGVyLmgKaW5kZXgg
OWQ5YjM0Zi4uMjkxMGE1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1h
Z2UtZGVjb2RlcnMvSW1hZ2VEZWNvZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
aW1hZ2UtZGVjb2RlcnMvSW1hZ2VEZWNvZGVyLmgKQEAgLTY0LDcgKzY0LDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogICAgICAgICAgICAgRGlzcG9zZU92ZXJ3cml0ZVByZXZpb3VzICAvLyBDbGVh
ciBmcmFtZSB0byBwcmV2aW91cyBmcmFtZWJ1ZmZlcgogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvLyBjb250ZW50cwogICAgICAgICB9OwotI2lmIFVTRShTS0lBKSB8fCBQ
TEFURk9STShRVCkKKyNpZiBVU0UoU0tJQSkgfHwgKFBMQVRGT1JNKFFUKSAmJiBFTkFCTEUoUVRf
SU1BR0VfREVDT0RFUikpCiAgICAgICAgIHR5cGVkZWYgdWludDMyX3QgUGl4ZWxEYXRhOwogI2Vs
c2UKICAgICAgICAgdHlwZWRlZiB1bnNpZ25lZCBQaXhlbERhdGE7CkBAIC0xNDAsNyArMTQwLDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB7CiAjaWYgVVNFKFNLSUEpCiAgICAgICAg
ICAgICByZXR1cm4gbV9iaXRtYXAuYml0bWFwKCkuZ2V0QWRkcjMyKHgsIHkpOwotI2VsaWYgUExB
VEZPUk0oUVQpCisjZWxpZiBQTEFURk9STShRVCkgJiYgRU5BQkxFKFFUX0lNQUdFX0RFQ09ERVIp
CiAgICAgICAgICAgICBtX2ltYWdlID0gbV9waXhtYXAudG9JbWFnZSgpOwogICAgICAgICAgICAg
bV9waXhtYXAgPSBRUGl4bWFwKCk7CiAgICAgICAgICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2Fz
dF9wdHI8UVJnYio+KG1faW1hZ2Uuc2NhbkxpbmUoeSkpICsgeDsKQEAgLTE0OSw3ICsxNDksNyBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAjZW5kaWYKICAgICAgICAgfQogCi0jaWYgUExBVEZPUk0o
UVQpCisjaWYgUExBVEZPUk0oUVQpICYmIEVOQUJMRShRVF9JTUFHRV9ERUNPREVSKQogICAgICAg
ICB2b2lkIHNldFBpeG1hcChjb25zdCBRUGl4bWFwJiBwaXhtYXApOwogI2VuZGlmCiAKQEAgLTE5
MCw3ICsxOTAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAjaWYgUExBVEZPUk0oQ0hST01JVU0p
ICYmIE9TKERBUldJTikKICAgICAgICAgQ29sb3JQcm9maWxlIG1fY29sb3JQcm9maWxlOwogI2Vu
ZGlmCi0jZWxpZiBQTEFURk9STShRVCkKKyNlbGlmIFBMQVRGT1JNKFFUKSAmJiBFTkFCTEUoUVRf
SU1BR0VfREVDT0RFUikKICAgICAgICAgbXV0YWJsZSBRUGl4bWFwIG1fcGl4bWFwOwogICAgICAg
ICBtdXRhYmxlIFFJbWFnZSBtX2ltYWdlOwogICAgICAgICBib29sIG1faGFzQWxwaGE7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJ
bWFnZURlY29kZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMv
anBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNwcAppbmRleCBmMGZiZTQ0Li43ZTA5MDUxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJbWFn
ZURlY29kZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJz
L2pwZWcvSlBFR0ltYWdlRGVjb2Rlci5jcHAKQEAgLTEwMyw3ICsxMDMsMTEgQEAgdm9pZCBpbml0
X3NvdXJjZShqX2RlY29tcHJlc3NfcHRyIGpkKTsKIGJvb2xlYW4gZmlsbF9pbnB1dF9idWZmZXIo
al9kZWNvbXByZXNzX3B0ciBqZCk7CiB2b2lkIHNraXBfaW5wdXRfZGF0YShqX2RlY29tcHJlc3Nf
cHRyIGpkLCBsb25nIG51bV9ieXRlcyk7CiB2b2lkIHRlcm1fc291cmNlKGpfZGVjb21wcmVzc19w
dHIgamQpOwotdm9pZCBlcnJvcl9leGl0KGpfY29tbW9uX3B0ciBjaW5mbyk7CisjaWYgUExBVEZP
Uk0oUVQpCit2b2lkIGVycm9yX2V4aXQoal9jb21tb25fcHRyKSBOT19SRVRVUk47CisjZWxzZQor
dm9pZCBlcnJvcl9leGl0KGpfY29tbW9uX3B0ciBjaW5mbykgTk9fUkVUVVJOOworI2VuZGlmCiAK
IC8vIEltcGxlbWVudGF0aW9uIG9mIGEgSlBFRyBzcmMgb2JqZWN0IHRoYXQgdW5kZXJzdGFuZHMg
b3VyIHN0YXRlIG1hY2hpbmUKIHN0cnVjdCBkZWNvZGVyX3NvdXJjZV9tZ3IgewpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcG5nL1BOR0ltYWdlRGVj
b2Rlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5H
SW1hZ2VEZWNvZGVyLmNwcAppbmRleCBjNTBlYmU5Li5iY2NhNDc0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1h
Z2VEZWNvZGVyLmNwcApAQCAtNjQsNiArNjQsOSBAQCBjb25zdCBkb3VibGUgY0ludmVyc2VHYW1t
YSA9IDAuNDU0NTU7CiBjb25zdCB1bnNpZ25lZCBsb25nIGNNYXhQTkdTaXplID0gMTAwMDAwMFVM
OwogCiAvLyBDYWxsZWQgaWYgdGhlIGRlY29kaW5nIG9mIHRoZSBpbWFnZSBmYWlscy4KKyNpZiBQ
TEFURk9STShRVCkKK3N0YXRpYyB2b2lkIFBOR0FQSSBkZWNvZGluZ0ZhaWxlZChwbmdfc3RydWN0
cCwgcG5nX2NvbnN0X2NoYXJwKSBOT19SRVRVUk47CisjZW5kaWYKIHN0YXRpYyB2b2lkIFBOR0FQ
SSBkZWNvZGluZ0ZhaWxlZChwbmdfc3RydWN0cCBwbmcsIHBuZ19jb25zdF9jaGFycCkKIHsKICAg
ICBsb25nam1wKEpNUEJVRihwbmcpLCAxKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2ltYWdlLWRlY29kZXJzL3F0L0ltYWdlRnJhbWVRdC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9xdC9JbWFnZUZyYW1lUXQuY3BwCmluZGV4IDFlYWQ5
YTkuLjI3M2IwOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRl
Y29kZXJzL3F0L0ltYWdlRnJhbWVRdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
aW1hZ2UtZGVjb2RlcnMvcXQvSW1hZ2VGcmFtZVF0LmNwcApAQCAtMzAsMTEgKzMwLDI1IEBACiAK
ICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgogCi0jaW5jbHVkZSA8UVBpeG1hcD4KLSNpbmNs
dWRlIDxzdGRpby5oPgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKKyNpZiAhRU5BQkxFKFFUX0lN
QUdFX0RFQ09ERVIpCisKK1FQaXhtYXAqIEltYWdlRnJhbWU6OmFzTmV3TmF0aXZlSW1hZ2UoKSBj
b25zdAoreworICAgIFFJbWFnZTo6Rm9ybWF0IGZtdDsKKyAgICBpZiAobV9oYXNBbHBoYSkKKyAg
ICAgICAgZm10ID0gbV9wcmVtdWx0aXBseUFscGhhID8gIFFJbWFnZTo6Rm9ybWF0X0FSR0IzMl9Q
cmVtdWx0aXBsaWVkIDogUUltYWdlOjpGb3JtYXRfQVJHQjMyOworICAgIGVsc2UKKyAgICAgICAg
Zm10ID0gUUltYWdlOjpGb3JtYXRfUkdCMzI7CisKKyAgICBRSW1hZ2UgaW1nKHJlaW50ZXJwcmV0
X2Nhc3Q8dWNoYXIqPihtX2J5dGVzKSwgbV9zaXplLndpZHRoKCksIG1fc2l6ZS5oZWlnaHQoKSwg
c2l6ZW9mKFBpeGVsRGF0YSkgKiBtX3NpemUud2lkdGgoKSwgZm10KTsKKworICAgIHJldHVybiBu
ZXcgUVBpeG1hcChRUGl4bWFwOjpmcm9tSW1hZ2UoaW1nKSk7Cit9CisKKyNlbHNlCisKIEltYWdl
RnJhbWU6OkltYWdlRnJhbWUoKQogICAgIDogbV9oYXNBbHBoYShmYWxzZSkgCiAgICAgLCBtX3Np
emUoKQpAQCAtMTU0LDQgKzE2OCw2IEBAIGludCBJbWFnZUZyYW1lOjpoZWlnaHQoKSBjb25zdAog
ICAgIHJldHVybiBtX3NpemUuaGVpZ2h0KCk7CiB9CiAKKyNlbmRpZgorCiB9CmRpZmYgLS1naXQg
YS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZmUzNDcyMC4uNjkyNzYw
NyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE0IEBACisyMDEyLTAyLTIzICBab2x0YW4gSG9ydmF0aCAgPHpvbHRhbkB3ZWJraXQu
b3JnPgorCisgICAgICAgIFtRdF0gQWxsb3cgdG8gdXNlIFdlYkNvcmUgaW1hZ2VkZWNvZGVycwor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzI0MTAKKwor
ICAgICAgICBBZGQgRU5BQkxFX1FUX0lNQUdFX0RFQ09ERVIgbWFjcm8sIGl0J3MgZW5hYmxlZCBi
eSBkZWZhdWx0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogcW1ha2UvbWtzcGVjcy9mZWF0dXJlcy9mZWF0dXJlcy5wcmY6CisKIDIwMTItMDItMjMg
IFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtd
IEZ1bGxTY3JlZW4gc2lnbmFscwpkaWZmIC0tZ2l0IGEvVG9vbHMvcW1ha2UvbWtzcGVjcy9mZWF0
dXJlcy9mZWF0dXJlcy5wcmYgYi9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVzL2ZlYXR1cmVz
LnByZgppbmRleCBlYTczMWU0Li5hOWI4MjljIDEwMDY0NAotLS0gYS9Ub29scy9xbWFrZS9ta3Nw
ZWNzL2ZlYXR1cmVzL2ZlYXR1cmVzLnByZgorKysgYi9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1
cmVzL2ZlYXR1cmVzLnByZgpAQCAtODYsNiArODYsNyBAQCBoYXZlUXQoNCk6dW5peDohbWFjOiFl
bWJlZGRlZCB7CiAhY29udGFpbnMoREVGSU5FUywgRU5BQkxFX1ZJREVPX1RSQUNLPS4pOiBERUZJ
TkVTICs9IEVOQUJMRV9WSURFT19UUkFDSz0wCiAhY29udGFpbnMoREVGSU5FUywgRU5BQkxFX1RP
VUNIX0lDT05fTE9BRElORz0uKTogREVGSU5FUyArPSBFTkFCTEVfVE9VQ0hfSUNPTl9MT0FESU5H
PTAKICFjb250YWlucyhERUZJTkVTLCBFTkFCTEVfQU5JTUFUSU9OX0FQST0uKTogREVGSU5FUyAr
PSBFTkFCTEVfQU5JTUFUSU9OX0FQST0wCishY29udGFpbnMoREVGSU5FUywgRU5BQkxFX1FUX0lN
QUdFX0RFQ09ERVI9Lik6IERFRklORVMgKz0gRU5BQkxFX1FUX0lNQUdFX0RFQ09ERVI9MQogCiAj
IEVuYWJsZWQgaW4gU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5oIGlmIG5vdCBz
ZXQKICMgV2UgaGF2ZSB0byBkbyB0aGUgc2FtZSB0byBiZSBhYmxlIHRvIGRpc2FibGUgdGhlIGZl
YXR1cmUgaW4gYnVpbGQtd2Via2l0Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>128722</attachid>
            <date>2012-02-24 06:03:36 -0800</date>
            <delta_ts>2012-04-11 01:46:32 -0700</delta_ts>
            <desc>proposed patch</desc>
            <filename>allowwebcoreimg4.patch</filename>
            <type>text/plain</type>
            <size>12172</size>
            <attacher name="Zoltan Horvath">zoltan</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA1N2Q0NjhkLi44N2Y5NDI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzkg
QEAKKzIwMTItMDItMjMgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtpdC5vcmc+CisKKyAg
ICAgICAgW1F0XSBBbGxvdyB0byB1c2UgV2ViQ29yZSBpbWFnZWRlY29kZXJzCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMjQxMAorCisgICAgICAgIEFk
ZCBFTkFCTEUoUVRfSU1BR0VfREVDT0RFUikgZ3VhcmRzIGFyb3VuZCBRdCBpbWFnZWRlY29kZXJz
IGFuZCBzZXQgaXQgdG8gZGVmYXVsdC4KKyAgICAgICAgQnkgcGFzc2luZyBFTkFCTEVfUVRfSU1B
R0VfREVDT0RFUj0wIGRlZmluZSB0byB0aGUgYnVpbGQgc3lzdGVtLCBXZWJLaXQgd2lsbCBidWls
ZAorICAgICAgICB3aXRoIFdlYkNvcmUncyBpbWFnZWRlY29kZXJzLgorCisgICAgICAgIEkgYWRk
ZWQgTk9fUkVUVVJOIGF0dHJpYnV0ZSBhbmQgUExBVEZPUk0oUVQpIGNvbmRpdGlvbmFscyB0byAy
IGZ1bmN0aW9ucyBvZiBQTkcgYW5kIAorICAgICAgICBKUEVHIGRlY29kZXJzIHRvIGF2b2lkIGNv
bXBpbGVyIHdhcm5pbmdzIGJlY2F1c2UgaW4gUXQtcG9ydCB3ZSB0cmVhdCB3YXJuaW5nIGFzIGVy
cm9ycyAoLVdlcnJvcikuCisKKyAgICAgICAgSSdtIGNvbnRpbnVpbmcgdGhlIHJlZmFjdG9yaW5n
IG9mIHRoaXMgYXJlYSBhbmQgdHJ5IHRvIHVzZSBRdCBpbWFnZWRlY29kZXJzIG9ubHkgaW4gCisg
ICAgICAgIGNhc2VzIHdoZW4gV2ViQ29yZSBkb2Vzbid0IHN1cHBvcnQgdGhlIGltYWdlIGZvcm1h
dC4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBi
ZWhhdmlvciBjaGFuZ2UsIG5vIG5lZWQgbmV3IHRlc3RzLgorCisgICAgICAgICogVGFyZ2V0LnBy
aToKKyAgICAgICAgKiBXZWJDb3JlLnByaToKKyAgICAgICAgKiBwbGF0Zm9ybS9NSU1FVHlwZVJl
Z2lzdHJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmluaXRpYWxpemVTdXBwb3J0ZWRJbWFnZU1J
TUVUeXBlcyk6CisgICAgICAgIChXZWJDb3JlOjppbml0aWFsaXplU3VwcG9ydGVkSW1hZ2VNSU1F
VHlwZXNGb3JFbmNvZGluZyk6CisgICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvSW1h
Z2VEZWNvZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpJbWFnZUZyYW1lOjpnZXRBZGRyKToKKyAg
ICAgICAgKEltYWdlRnJhbWUpOgorICAgICAgICAqIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pw
ZWcvSlBFR0ltYWdlRGVjb2Rlci5jcHA6CisgICAgICAgIE5PX1JFVFVSTiBoYXMgYmVlbiBhZGRl
ZCB0byBhIGZ1bmN0aW9uIHRvIGF2b2lkIHdhcm5pbmcgbWVzc2FnZS4KKyAgICAgICAgKiBwbGF0
Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcDoKKyAgICAgICAgTk9f
UkVUVVJOIGhhcyBiZWVuIGFkZGVkIHRvIGEgZnVuY3Rpb24gdG8gYXZvaWQgd2FybmluZyBtZXNz
YWdlLgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgICogcGxhdGZvcm0vaW1hZ2UtZGVjb2Rl
cnMvcXQvSW1hZ2VGcmFtZVF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAoV2Vi
Q29yZTo6SW1hZ2VGcmFtZTo6YXNOZXdOYXRpdmVJbWFnZSk6CisKIDIwMTItMDItMjIgIElnb3Ig
T2xpdmVpcmEgIDxpZ29yLm9Ac2lzYS5zYW1zdW5nLmNvbT4KIAogICAgICAgICBFdmVyeSBjYWxs
IHRvIFJlbmRlck9iamVjdDo6c2V0QW5pbWF0YWJsZVN0eWxlKCkgaXRlcmF0ZXMgdGhyb3VnaCBh
bGwgbV9jb21wb3NpdGVBbmltYXRpb25zOiBwb3RlbnRpYWxseSBPKE5eMikKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL1RhcmdldC5wcmkgYi9Tb3VyY2UvV2ViQ29yZS9UYXJnZXQucHJpCmlu
ZGV4IDljY2UwMzUuLjllNTY3YmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1RhcmdldC5w
cmkKKysrIGIvU291cmNlL1dlYkNvcmUvVGFyZ2V0LnByaQpAQCAtMjE5MSw3ICsyMTkxLDYgQEAg
SEVBREVSUyArPSBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvUmVnaW9uLmggXAogICAgIHBsYXRm
b3JtL2dyYXBoaWNzL1JvdW5kZWRSZWN0LmggXAogICAgIHBsYXRmb3JtL2dyYXBoaWNzL3F0L0Zv
bnRDdXN0b21QbGF0Zm9ybURhdGEuaCBcCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW1hZ2VE
ZWNvZGVyUXQuaCBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvU3RpbGxJbWFnZVF0LmggXAog
ICAgIHBsYXRmb3JtL2dyYXBoaWNzL3F0L1RyYW5zcGFyZW5jeUxheWVyLmggXAogICAgIHBsYXRm
b3JtL2dyYXBoaWNzL1NlZ21lbnRlZEZvbnREYXRhLmggXApAQCAtMjgwMiw3ICsyODAxLDYgQEAg
U09VUkNFUyArPSBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvR3JhcGhpY3NDb250ZXh0UXQu
Y3BwIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9xdC9JY29uUXQuY3BwIFwKICAgICBwbGF0Zm9y
bS9ncmFwaGljcy9xdC9JbWFnZUJ1ZmZlclF0LmNwcCBcCi0gICAgcGxhdGZvcm0vZ3JhcGhpY3Mv
cXQvSW1hZ2VEZWNvZGVyUXQuY3BwIFwKICAgICBwbGF0Zm9ybS9ncmFwaGljcy9xdC9JbWFnZVF0
LmNwcCBcCiAgICAgcGxhdGZvcm0vZ3JhcGhpY3MvcXQvSW50UG9pbnRRdC5jcHAgXAogICAgIHBs
YXRmb3JtL2dyYXBoaWNzL3F0L0ludFJlY3RRdC5jcHAgXApAQCAtMzkzOCw2ICszOTM2LDM1IEBA
IGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9NSFRNTD0xKSB7CiAgICAgICAgIHBhZ2UvUGFnZVNl
cmlhbGl6ZXIuY3BwCiB9CiAKK2NvbnRhaW5zKERFRklORVMsIEVOQUJMRV9RVF9JTUFHRV9ERUNP
REVSPTEpIHsKKyAgICBIRUFERVJTICs9IHBsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlRGVjb2Rl
clF0LmgKKyAgICBTT1VSQ0VTICs9IHBsYXRmb3JtL2dyYXBoaWNzL3F0L0ltYWdlRGVjb2RlclF0
LmNwcAorfSBlbHNlIHsKKyAgICBIRUFERVJTICs9IFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2Ut
ZGVjb2RlcnMvYm1wL0JNUEltYWdlRGVjb2Rlci5oIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2Ut
ZGVjb2RlcnMvYm1wL0JNUEltYWdlUmVhZGVyLmggXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9naWYvR0lGSW1hZ2VEZWNvZGVyLmggXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9naWYvR0lGSW1hZ2VSZWFkZXIuaFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVj
b2RlcnMvaWNvL0lDT0ltYWdlRGVjb2Rlci5oIFwKKyAgICAgICAgcGxhdGZvcm0vaW1hZ2UtZGVj
b2RlcnMvanBlZy9KUEVHSW1hZ2VEZWNvZGVyLmggXAorICAgICAgICBwbGF0Zm9ybS9pbWFnZS1k
ZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmgKKworICAgIFNPVVJDRVMgKz0gXAorICAgICAg
ICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9JbWFnZURlY29kZXIuY3BwIFwKKyAgICAgICAgcGxh
dGZvcm0vaW1hZ2UtZGVjb2RlcnMvYm1wL0JNUEltYWdlRGVjb2Rlci5jcHAgXAorICAgICAgICBw
bGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9ibXAvQk1QSW1hZ2VSZWFkZXIuY3BwIFwKKyAgICAgICAg
cGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmL0dJRkltYWdlRGVjb2Rlci5jcHAgXAorICAgICAg
ICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9naWYvR0lGSW1hZ2VSZWFkZXIuY3BwXAorICAgICAg
ICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9pY28vSUNPSW1hZ2VEZWNvZGVyLmNwcCBcCisgICAg
ICAgIHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2pwZWcvSlBFR0ltYWdlRGVjb2Rlci5jcHAgXAor
ICAgICAgICBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcAor
CisgICAgY29udGFpbnMoREVGSU5FUywgV1RGX1VTRV9XRUJQPTEpIHsKKyAgICAgICAgSEVBREVS
UyArPSBwbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy93ZWJwL1dFQlBJbWFnZURlY29kZXIuaAorICAg
ICAgICBTT1VSQ0VTICs9IHBsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3dlYnAvV0VCUEltYWdlRGVj
b2Rlci5jcHAKKyAgICB9Cit9CisKICFzeXN0ZW0tc3FsaXRlOmV4aXN0cyggJCR7U1FMSVRFM1NS
Q0RJUn0vc3FsaXRlMy5jICkgewogICAgICMgQnVpbGQgc3FsaXRlMyBpbnRvIFdlYkNvcmUgZnJv
bSBzb3VyY2UKICAgICAjIHNvbWV3aGF0IGNvcGllZCBmcm9tICQkUVRfU09VUkNFX1RSRUUvc3Jj
L3BsdWdpbnMvc3FsZHJpdmVycy9zcWxpdGUvc3FsaXRlLnBybwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS5wcmkgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnByaQppbmRleCBh
Zjk5NDFhLi5hM2I3YmU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnByaQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnByaQpAQCAtMjAzLDYgKzIwMywyMiBAQCBjb250
YWlucyhDT05GSUcsIHRleG1hcCkgewogICAgIExJQlMgKz0gLWxzcWxpdGUzCiB9CiAKK2NvbnRh
aW5zKERFRklORVMsIEVOQUJMRV9RVF9JTUFHRV9ERUNPREVSPTApIHsKKyAgICBJTkNMVURFUEFU
SCArPSBcCisgICAgICAgICQkU09VUkNFX0RJUi9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9ibXAg
XAorICAgICAgICAkJFNPVVJDRV9ESVIvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvZ2lmIFwKKyAg
ICAgICAgJCRTT1VSQ0VfRElSL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL2ljbyBcCisgICAgICAg
ICQkU09VUkNFX0RJUi9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnIFwKKyAgICAgICAgJCRT
T1VSQ0VfRElSL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3BuZworCisgICAgTElCUyArPSAtbGpw
ZWcgLWxwbmcxMgorCisgICAgY29udGFpbnMoREVGSU5FUywgV1RGX1VTRV9XRUJQPTEpIHsKKyAg
ICAgICAgSU5DTFVERVBBVEggKz0gJCRTT1VSQ0VfRElSL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJz
L3dlYnAKKyAgICAgICAgTElCUyArPSAtbHdlYnAKKyAgICB9Cit9CisKIHdpbjMyLSp8d2luY2Uq
IHsKICAgICBETExERVNURElSID0gJCR7Uk9PVF9CVUlMRF9ESVJ9L2JpbgogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9NSU1FVHlwZVJlZ2lzdHJ5LmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL01JTUVUeXBlUmVnaXN0cnkuY3BwCmluZGV4IGI1ZjJkNDUuLmNiYjBh
YWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL01JTUVUeXBlUmVnaXN0cnku
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL01JTUVUeXBlUmVnaXN0cnkuY3BwCkBA
IC0zOSw3ICszOSw3IEBACiAjaW5jbHVkZSA8QXBwbGljYXRpb25TZXJ2aWNlcy9BcHBsaWNhdGlv
blNlcnZpY2VzLmg+CiAjaW5jbHVkZSA8d3RmL1JldGFpblB0ci5oPgogI2VuZGlmCi0jaWYgUExB
VEZPUk0oUVQpCisjaWYgUExBVEZPUk0oUVQpICYmIEVOQUJMRShRVF9JTUFHRV9ERUNPREVSKQog
I2luY2x1ZGUgPHFpbWFnZXJlYWRlci5oPgogI2luY2x1ZGUgPHFpbWFnZXdyaXRlci5oPgogI2Vu
ZGlmCkBAIC0yMjksNyArMjI5LDcgQEAgc3RhdGljIHZvaWQgaW5pdGlhbGl6ZVN1cHBvcnRlZElt
YWdlTUlNRVR5cGVzKCkKICAgICBzdXBwb3J0ZWRJbWFnZU1JTUVUeXBlcy0+cmVtb3ZlKCJhcHBs
aWNhdGlvbi9wZGYiKTsKICAgICBzdXBwb3J0ZWRJbWFnZU1JTUVUeXBlcy0+cmVtb3ZlKCJhcHBs
aWNhdGlvbi9wb3N0c2NyaXB0Iik7CiAKLSNlbGlmIFBMQVRGT1JNKFFUKQorI2VsaWYgUExBVEZP
Uk0oUVQpICYmIEVOQUJMRShRVF9JTUFHRV9ERUNPREVSKQogICAgIFFMaXN0PFFCeXRlQXJyYXk+
IGZvcm1hdHMgPSBRSW1hZ2VSZWFkZXI6OnN1cHBvcnRlZEltYWdlRm9ybWF0cygpOwogICAgIGZv
ciAoc2l6ZV90IGkgPSAwOyBpIDwgc3RhdGljX2Nhc3Q8c2l6ZV90Pihmb3JtYXRzLnNpemUoKSk7
ICsraSkgewogI2lmIEVOQUJMRShTVkcpCkBAIC0yODksNyArMjg5LDcgQEAgc3RhdGljIHZvaWQg
aW5pdGlhbGl6ZVN1cHBvcnRlZEltYWdlTUlNRVR5cGVzRm9yRW5jb2RpbmcoKQogICAgIHN1cHBv
cnRlZEltYWdlTUlNRVR5cGVzRm9yRW5jb2RpbmctPmFkZCgiaW1hZ2UvanBlZyIpOwogICAgIHN1
cHBvcnRlZEltYWdlTUlNRVR5cGVzRm9yRW5jb2RpbmctPmFkZCgiaW1hZ2UvZ2lmIik7CiAjZW5k
aWYKLSNlbGlmIFBMQVRGT1JNKFFUKQorI2VsaWYgUExBVEZPUk0oUVQpICYmIEVOQUJMRShRVF9J
TUFHRV9ERUNPREVSKQogICAgIFFMaXN0PFFCeXRlQXJyYXk+IGZvcm1hdHMgPSBRSW1hZ2VXcml0
ZXI6OnN1cHBvcnRlZEltYWdlRm9ybWF0cygpOwogICAgIGZvciAoaW50IGkgPSAwOyBpIDwgZm9y
bWF0cy5zaXplKCk7ICsraSkgewogICAgICAgICBTdHJpbmcgbWltZVR5cGUgPSBNSU1FVHlwZVJl
Z2lzdHJ5OjpnZXRNSU1FVHlwZUZvckV4dGVuc2lvbihmb3JtYXRzLmF0KGkpLmNvbnN0RGF0YSgp
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0lt
YWdlRGVjb2Rlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9J
bWFnZURlY29kZXIuY3BwCmluZGV4IDM0Y2FmMGEuLmQ5ZTk2OTAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvSW1hZ2VEZWNvZGVyLmNwcApA
QCAtMzEsNyArMzEsOSBAQAogI2luY2x1ZGUgIklDT0ltYWdlRGVjb2Rlci5oIgogI2luY2x1ZGUg
IkpQRUdJbWFnZURlY29kZXIuaCIKICNpbmNsdWRlICJQTkdJbWFnZURlY29kZXIuaCIKKyNpZiBV
U0UoV0VCUCkKICNpbmNsdWRlICJXRUJQSW1hZ2VEZWNvZGVyLmgiCisjZW5kaWYKICNpbmNsdWRl
ICJTaGFyZWRCdWZmZXIuaCIKIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL0ltYWdlRGVjb2Rlci5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvSW1hZ2VEZWNvZGVyLmgKaW5kZXgg
OWQ5YjM0Zi4uMjkxMGE1ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1h
Z2UtZGVjb2RlcnMvSW1hZ2VEZWNvZGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
aW1hZ2UtZGVjb2RlcnMvSW1hZ2VEZWNvZGVyLmgKQEAgLTY0LDcgKzY0LDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogICAgICAgICAgICAgRGlzcG9zZU92ZXJ3cml0ZVByZXZpb3VzICAvLyBDbGVh
ciBmcmFtZSB0byBwcmV2aW91cyBmcmFtZWJ1ZmZlcgogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAvLyBjb250ZW50cwogICAgICAgICB9OwotI2lmIFVTRShTS0lBKSB8fCBQ
TEFURk9STShRVCkKKyNpZiBVU0UoU0tJQSkgfHwgKFBMQVRGT1JNKFFUKSAmJiBFTkFCTEUoUVRf
SU1BR0VfREVDT0RFUikpCiAgICAgICAgIHR5cGVkZWYgdWludDMyX3QgUGl4ZWxEYXRhOwogI2Vs
c2UKICAgICAgICAgdHlwZWRlZiB1bnNpZ25lZCBQaXhlbERhdGE7CkBAIC0xNDAsNyArMTQwLDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICB7CiAjaWYgVVNFKFNLSUEpCiAgICAgICAg
ICAgICByZXR1cm4gbV9iaXRtYXAuYml0bWFwKCkuZ2V0QWRkcjMyKHgsIHkpOwotI2VsaWYgUExB
VEZPUk0oUVQpCisjZWxpZiBQTEFURk9STShRVCkgJiYgRU5BQkxFKFFUX0lNQUdFX0RFQ09ERVIp
CiAgICAgICAgICAgICBtX2ltYWdlID0gbV9waXhtYXAudG9JbWFnZSgpOwogICAgICAgICAgICAg
bV9waXhtYXAgPSBRUGl4bWFwKCk7CiAgICAgICAgICAgICByZXR1cm4gcmVpbnRlcnByZXRfY2Fz
dF9wdHI8UVJnYio+KG1faW1hZ2Uuc2NhbkxpbmUoeSkpICsgeDsKQEAgLTE0OSw3ICsxNDksNyBA
QCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAjZW5kaWYKICAgICAgICAgfQogCi0jaWYgUExBVEZPUk0o
UVQpCisjaWYgUExBVEZPUk0oUVQpICYmIEVOQUJMRShRVF9JTUFHRV9ERUNPREVSKQogICAgICAg
ICB2b2lkIHNldFBpeG1hcChjb25zdCBRUGl4bWFwJiBwaXhtYXApOwogI2VuZGlmCiAKQEAgLTE5
MCw3ICsxOTAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAjaWYgUExBVEZPUk0oQ0hST01JVU0p
ICYmIE9TKERBUldJTikKICAgICAgICAgQ29sb3JQcm9maWxlIG1fY29sb3JQcm9maWxlOwogI2Vu
ZGlmCi0jZWxpZiBQTEFURk9STShRVCkKKyNlbGlmIFBMQVRGT1JNKFFUKSAmJiBFTkFCTEUoUVRf
SU1BR0VfREVDT0RFUikKICAgICAgICAgbXV0YWJsZSBRUGl4bWFwIG1fcGl4bWFwOwogICAgICAg
ICBtdXRhYmxlIFFJbWFnZSBtX2ltYWdlOwogICAgICAgICBib29sIG1faGFzQWxwaGE7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJ
bWFnZURlY29kZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMv
anBlZy9KUEVHSW1hZ2VEZWNvZGVyLmNwcAppbmRleCBmMGZiZTQ0Li5kYjk4ZmI1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9qcGVnL0pQRUdJbWFn
ZURlY29kZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJz
L2pwZWcvSlBFR0ltYWdlRGVjb2Rlci5jcHAKQEAgLTEwMyw3ICsxMDMsMTEgQEAgdm9pZCBpbml0
X3NvdXJjZShqX2RlY29tcHJlc3NfcHRyIGpkKTsKIGJvb2xlYW4gZmlsbF9pbnB1dF9idWZmZXIo
al9kZWNvbXByZXNzX3B0ciBqZCk7CiB2b2lkIHNraXBfaW5wdXRfZGF0YShqX2RlY29tcHJlc3Nf
cHRyIGpkLCBsb25nIG51bV9ieXRlcyk7CiB2b2lkIHRlcm1fc291cmNlKGpfZGVjb21wcmVzc19w
dHIgamQpOworI2lmIFBMQVRGT1JNKFFUKQordm9pZCBlcnJvcl9leGl0KGpfY29tbW9uX3B0cikg
Tk9fUkVUVVJOOworI2Vsc2UKIHZvaWQgZXJyb3JfZXhpdChqX2NvbW1vbl9wdHIgY2luZm8pOwor
I2VuZGlmCiAKIC8vIEltcGxlbWVudGF0aW9uIG9mIGEgSlBFRyBzcmMgb2JqZWN0IHRoYXQgdW5k
ZXJzdGFuZHMgb3VyIHN0YXRlIG1hY2hpbmUKIHN0cnVjdCBkZWNvZGVyX3NvdXJjZV9tZ3Igewpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcG5nL1BO
R0ltYWdlRGVjb2Rlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVy
cy9wbmcvUE5HSW1hZ2VEZWNvZGVyLmNwcAppbmRleCBjNTBlYmU5Li5iY2NhNDc0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9wbmcvUE5HSW1hZ2VE
ZWNvZGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9w
bmcvUE5HSW1hZ2VEZWNvZGVyLmNwcApAQCAtNjQsNiArNjQsOSBAQCBjb25zdCBkb3VibGUgY0lu
dmVyc2VHYW1tYSA9IDAuNDU0NTU7CiBjb25zdCB1bnNpZ25lZCBsb25nIGNNYXhQTkdTaXplID0g
MTAwMDAwMFVMOwogCiAvLyBDYWxsZWQgaWYgdGhlIGRlY29kaW5nIG9mIHRoZSBpbWFnZSBmYWls
cy4KKyNpZiBQTEFURk9STShRVCkKK3N0YXRpYyB2b2lkIFBOR0FQSSBkZWNvZGluZ0ZhaWxlZChw
bmdfc3RydWN0cCwgcG5nX2NvbnN0X2NoYXJwKSBOT19SRVRVUk47CisjZW5kaWYKIHN0YXRpYyB2
b2lkIFBOR0FQSSBkZWNvZGluZ0ZhaWxlZChwbmdfc3RydWN0cCBwbmcsIHBuZ19jb25zdF9jaGFy
cCkKIHsKICAgICBsb25nam1wKEpNUEJVRihwbmcpLCAxKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2ltYWdlLWRlY29kZXJzL3F0L0ltYWdlRnJhbWVRdC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9pbWFnZS1kZWNvZGVycy9xdC9JbWFnZUZyYW1lUXQuY3BwCmlu
ZGV4IDFlYWQ5YTkuLjI3M2IwOWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2ltYWdlLWRlY29kZXJzL3F0L0ltYWdlRnJhbWVRdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vaW1hZ2UtZGVjb2RlcnMvcXQvSW1hZ2VGcmFtZVF0LmNwcApAQCAtMzAsMTEgKzMw
LDI1IEBACiAKICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgogCi0jaW5jbHVkZSA8UVBpeG1h
cD4KLSNpbmNsdWRlIDxzdGRpby5oPgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKKyNpZiAhRU5B
QkxFKFFUX0lNQUdFX0RFQ09ERVIpCisKK1FQaXhtYXAqIEltYWdlRnJhbWU6OmFzTmV3TmF0aXZl
SW1hZ2UoKSBjb25zdAoreworICAgIFFJbWFnZTo6Rm9ybWF0IGZtdDsKKyAgICBpZiAobV9oYXNB
bHBoYSkKKyAgICAgICAgZm10ID0gbV9wcmVtdWx0aXBseUFscGhhID8gIFFJbWFnZTo6Rm9ybWF0
X0FSR0IzMl9QcmVtdWx0aXBsaWVkIDogUUltYWdlOjpGb3JtYXRfQVJHQjMyOworICAgIGVsc2UK
KyAgICAgICAgZm10ID0gUUltYWdlOjpGb3JtYXRfUkdCMzI7CisKKyAgICBRSW1hZ2UgaW1nKHJl
aW50ZXJwcmV0X2Nhc3Q8dWNoYXIqPihtX2J5dGVzKSwgbV9zaXplLndpZHRoKCksIG1fc2l6ZS5o
ZWlnaHQoKSwgc2l6ZW9mKFBpeGVsRGF0YSkgKiBtX3NpemUud2lkdGgoKSwgZm10KTsKKworICAg
IHJldHVybiBuZXcgUVBpeG1hcChRUGl4bWFwOjpmcm9tSW1hZ2UoaW1nKSk7Cit9CisKKyNlbHNl
CisKIEltYWdlRnJhbWU6OkltYWdlRnJhbWUoKQogICAgIDogbV9oYXNBbHBoYShmYWxzZSkgCiAg
ICAgLCBtX3NpemUoKQpAQCAtMTU0LDQgKzE2OCw2IEBAIGludCBJbWFnZUZyYW1lOjpoZWlnaHQo
KSBjb25zdAogICAgIHJldHVybiBtX3NpemUuaGVpZ2h0KCk7CiB9CiAKKyNlbmRpZgorCiB9CmRp
ZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZmUzNDcy
MC4uNjkyNzYwNyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5n
ZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDEyLTAyLTIzICBab2x0YW4gSG9ydmF0aCAgPHpvbHRh
bkB3ZWJraXQub3JnPgorCisgICAgICAgIFtRdF0gQWxsb3cgdG8gdXNlIFdlYkNvcmUgaW1hZ2Vk
ZWNvZGVycworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MzI0MTAKKworICAgICAgICBBZGQgRU5BQkxFX1FUX0lNQUdFX0RFQ09ERVIgbWFjcm8sIGl0J3Mg
ZW5hYmxlZCBieSBkZWZhdWx0LgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogcW1ha2UvbWtzcGVjcy9mZWF0dXJlcy9mZWF0dXJlcy5wcmY6CisKIDIw
MTItMDItMjMgIFBoaWxpcHBlIE5vcm1hbmQgIDxwbm9ybWFuZEBpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFtHVEtdIEZ1bGxTY3JlZW4gc2lnbmFscwpkaWZmIC0tZ2l0IGEvVG9vbHMvcW1ha2UvbWtz
cGVjcy9mZWF0dXJlcy9mZWF0dXJlcy5wcmYgYi9Ub29scy9xbWFrZS9ta3NwZWNzL2ZlYXR1cmVz
L2ZlYXR1cmVzLnByZgppbmRleCBlYTczMWU0Li5hOWI4MjljIDEwMDY0NAotLS0gYS9Ub29scy9x
bWFrZS9ta3NwZWNzL2ZlYXR1cmVzL2ZlYXR1cmVzLnByZgorKysgYi9Ub29scy9xbWFrZS9ta3Nw
ZWNzL2ZlYXR1cmVzL2ZlYXR1cmVzLnByZgpAQCAtODYsNiArODYsNyBAQCBoYXZlUXQoNCk6dW5p
eDohbWFjOiFlbWJlZGRlZCB7CiAhY29udGFpbnMoREVGSU5FUywgRU5BQkxFX1ZJREVPX1RSQUNL
PS4pOiBERUZJTkVTICs9IEVOQUJMRV9WSURFT19UUkFDSz0wCiAhY29udGFpbnMoREVGSU5FUywg
RU5BQkxFX1RPVUNIX0lDT05fTE9BRElORz0uKTogREVGSU5FUyArPSBFTkFCTEVfVE9VQ0hfSUNP
Tl9MT0FESU5HPTAKICFjb250YWlucyhERUZJTkVTLCBFTkFCTEVfQU5JTUFUSU9OX0FQST0uKTog
REVGSU5FUyArPSBFTkFCTEVfQU5JTUFUSU9OX0FQST0wCishY29udGFpbnMoREVGSU5FUywgRU5B
QkxFX1FUX0lNQUdFX0RFQ09ERVI9Lik6IERFRklORVMgKz0gRU5BQkxFX1FUX0lNQUdFX0RFQ09E
RVI9MQogCiAjIEVuYWJsZWQgaW4gU291cmNlL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5o
IGlmIG5vdCBzZXQKICMgV2UgaGF2ZSB0byBkbyB0aGUgc2FtZSB0byBiZSBhYmxlIHRvIGRpc2Fi
bGUgdGhlIGZlYXR1cmUgaW4gYnVpbGQtd2Via2l0Cg==
</data>
<flag name="review"
          id="131189"
          type_id="1"
          status="+"
          setter="hausmann"
    />
    <flag name="commit-queue"
          id="131190"
          type_id="3"
          status="-"
          setter="zoltan"
    />
          </attachment>
      

    </bug>

</bugzilla>