<?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>98857</bug_id>
          
          <creation_ts>2012-10-09 22:15:27 -0700</creation_ts>
          <short_desc>[Qt][ARM] REGRESSION(r130826): It made 33 JSC test and 466 layout tests crash</short_desc>
          <delta_ts>2012-11-27 01:57:39 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>420+</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>P1</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>76773</blocked>
    
    <blocked>79668</blocked>
    
    <blocked>97288</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>fpizlo</cc>
    
    <cc>gaborb</cc>
    
    <cc>galpeter</cc>
    
    <cc>loki</cc>
    
    <cc>mhahnenberg</cc>
    
    <cc>milian.wolff</cc>
    
    <cc>ossy</cc>
    
    <cc>rgabor</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zherczeg</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>738550</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-10-09 22:15:27 -0700</bug_when>
    <thetext>https://trac.webkit.org/changeset/130826 made 33 JSC test 
and 466 layout tests crash on the Qt ARM bot.

(last good revision: r130824, ... build fail ..., first bad revision: r130828)
results: http://build.webkit.sed.hu/builders/ARMv7%20Linux%20Qt5%20Release%20%28Test%29/builds/7185</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740104</commentid>
    <comment_count>1</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-10-11 10:24:52 -0700</bug_when>
    <thetext>ping?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740163</commentid>
    <comment_count>2</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-10-11 12:02:41 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; ping?

You guys are probably doing something strange with branch patching.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>741423</commentid>
    <comment_count>3</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-10-12 22:52:12 -0700</bug_when>
    <thetext>Now there are 800 crashing tests on the ARM bot.

Zoltán, Gábor, are you going to fix this bug in the near future? 
Don&apos;t you plan maintaining the ARM traditional assembler?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>746073</commentid>
    <comment_count>4</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-10-19 00:00:11 -0700</bug_when>
    <thetext>ping?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>746213</commentid>
    <comment_count>5</comment_count>
    <who name="Gabor Ballabas">gaborb</who>
    <bug_when>2012-10-19 04:31:46 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; ping?

I&apos;m working on it. It seems that something goes wrong with the get_by_val operation and the ARMAssembler::getLdrImmAddress function waits a pc-relative ldr instruction but gets something else instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>750457</commentid>
    <comment_count>6</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-10-25 00:00:23 -0700</bug_when>
    <thetext>Adding it as Qt 5.0.0 release blocker bug. It wouldn&apos;t 
be good to release Qt 5 with this serious bug. 

Or we should disable DFG JIT on ARM as a workaround. Gábor,
so you think if the bug would disappear with disabling DFG JIT?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>750532</commentid>
    <comment_count>7</comment_count>
    <who name="Gabor Ballabas">gaborb</who>
    <bug_when>2012-10-25 01:17:23 -0700</bug_when>
    <thetext>(In reply to comment #6)

&gt; Or we should disable DFG JIT on ARM as a workaround. Gábor,
&gt; so you think if the bug would disappear with disabling DFG JIT?

Unfortunately disabling the DFG JIT wouldn&apos;t solve this problem.

I have some debugging information about the crash maybe Filip or someone else with more expertise could figure out something from it:


(gdb) info breakpoints
Num     Type           Disp Enb Address    What
1       breakpoint     keep y   0x002cffd4 in JSC::JIT::privateCompileGetByVal(JSC::ByValInfo*, JSC::ReturnAddressPtr, JSC::JITArrayMode) 
                                           at /home/bgabor/WebKit/Source/JavaScriptCore/jit/JITPropertyAccess.cpp:1468
2       breakpoint     keep n   0x0008f0c0 in JSC::ARMAssembler::getLdrImmAddress(unsigned int*) at /home/bgabor/WebKit/Source/JavaScriptCore/assembler/ARMAssembler.h:780
(gdb) r
Starting program: /home/bgabor/jsc/test-crash/jsc -s -f ecma_3/shell.js -f ecma_3/Object/shell.js -f ecma_3/Object/class-001.js
[Thread debugging using libthread_db enabled]
Using host libthread_db library &quot;/lib/libthread_db.so.1&quot;.
[New Thread 0x42850450 (LWP 4914)]

Breakpoint 1, JSC::JIT::privateCompileGetByVal (this=0xbeffdae0, byValInfo=0x82b6c8, returnAddress=..., arrayMode=JSC::JITArrayStorage)
    at /home/bgabor/WebKit/Source/JavaScriptCore/jit/JITPropertyAccess.cpp:1468
1468        repatchBuffer.relink(byValInfo-&gt;badTypeJump, CodeLocationLabel(byValInfo-&gt;stubRoutine-&gt;code().code()));
(gdb) p byValInfo-&gt;badTypeJump
$1 = {&lt;JSC::CodeLocationCommon&gt; = {&lt;JSC::MacroAssemblerCodePtr&gt; = {m_value = 0x40022c10}, &lt;No data fields&gt;}, &lt;No data fields&gt;}
(gdb) x/i 0x40022c10
   0x40022c10:  ldr     r4, [r0, #3071384]
(gdb) enable 2
(gdb) c
Continuing.

Breakpoint 2, JSC::ARMAssembler::getLdrImmAddress (insn=0x40022c0c) at /home/bgabor/WebKit/Source/JavaScriptCore/assembler/ARMAssembler.h:783
783                 if ((*insn &amp; LdrPcImmediateInstructionMask) != LdrPcImmediateInstruction) {
(gdb) x/i 0x40022c0c
   0x40022c0c:  bne     0x40022e60
(gdb) x/i (0x40022c0c + 0x4)
   0x40022c10:  ldr     r4, [r0, #3071384]
(gdb) c
Continuing.
ASSERTION FAILED: (*insn &amp; BlxInstructionMask) == BlxInstruction
/home/bgabor/WebKit/Source/JavaScriptCore/assembler/ARMAssembler.h(785) : static JSC::ARMWord* JSC::ARMAssembler::getLdrImmAddress(JSC::ARMWord*)
1   0x8f134 /home/bgabor/jsc/test-crash/jsc() [0x8f134]
2   0x93b08 /home/bgabor/jsc/test-crash/jsc() [0x93b08]
3   0x20c6bc /home/bgabor/jsc/test-crash/jsc() [0x20c6bc]
4   0x20ce7c /home/bgabor/jsc/test-crash/jsc() [0x20ce7c]
5   0x20cd84 /home/bgabor/jsc/test-crash/jsc() [0x20cd84]
6   0x2d0028 /home/bgabor/jsc/test-crash/jsc() [0x2d0028]
7   0x2edb88 /home/bgabor/jsc/test-crash/jsc() [0x2edb88]
8   0x2e3da0 /home/bgabor/jsc/test-crash/jsc() [0x2e3da0]
9   0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
10  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
11  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
12  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
13  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
14  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
15  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
16  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
17  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
18  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
19  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
20  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
21  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
22  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
23  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
24  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
25  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
26  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
27  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
28  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
29  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
30  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
31  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]

Program received signal SIGSEGV, Segmentation fault.
0x0008f144 in JSC::ARMAssembler::getLdrImmAddress (insn=0x40022c0c) at /home/bgabor/WebKit/Source/JavaScriptCore/assembler/ARMAssembler.h:785
785                     ASSERT((*insn &amp; BlxInstructionMask) == BlxInstruction);
(gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>750550</commentid>
    <comment_count>8</comment_count>
      <attachid>170587</attachid>
    <who name="Gabor Ballabas">gaborb</who>
    <bug_when>2012-10-25 01:39:57 -0700</bug_when>
    <thetext>Created attachment 170587
Hack for disabling one of the array-related optimizations.

And if I disable one of the array-related optimizations as in the attached patch a lot of crashes go away.
It is also worth mentioning that the codeblock within the if 0 - endif seems to be completely ignored
in Linux-x86.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>750946</commentid>
    <comment_count>9</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-10-25 09:55:26 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #6)
&gt; 
&gt; &gt; Or we should disable DFG JIT on ARM as a workaround. Gábor,
&gt; &gt; so you think if the bug would disappear with disabling DFG JIT?
&gt; 
&gt; Unfortunately disabling the DFG JIT wouldn&apos;t solve this problem.
&gt; 
&gt; I have some debugging information about the crash maybe Filip or someone else with more expertise could figure out something from it:
&gt; 
&gt; 
&gt; (gdb) info breakpoints
&gt; Num     Type           Disp Enb Address    What
&gt; 1       breakpoint     keep y   0x002cffd4 in JSC::JIT::privateCompileGetByVal(JSC::ByValInfo*, JSC::ReturnAddressPtr, JSC::JITArrayMode) 
&gt;                                            at /home/bgabor/WebKit/Source/JavaScriptCore/jit/JITPropertyAccess.cpp:1468
&gt; 2       breakpoint     keep n   0x0008f0c0 in JSC::ARMAssembler::getLdrImmAddress(unsigned int*) at /home/bgabor/WebKit/Source/JavaScriptCore/assembler/ARMAssembler.h:780
&gt; (gdb) r
&gt; Starting program: /home/bgabor/jsc/test-crash/jsc -s -f ecma_3/shell.js -f ecma_3/Object/shell.js -f ecma_3/Object/class-001.js
&gt; [Thread debugging using libthread_db enabled]
&gt; Using host libthread_db library &quot;/lib/libthread_db.so.1&quot;.
&gt; [New Thread 0x42850450 (LWP 4914)]
&gt; 
&gt; Breakpoint 1, JSC::JIT::privateCompileGetByVal (this=0xbeffdae0, byValInfo=0x82b6c8, returnAddress=..., arrayMode=JSC::JITArrayStorage)
&gt;     at /home/bgabor/WebKit/Source/JavaScriptCore/jit/JITPropertyAccess.cpp:1468
&gt; 1468        repatchBuffer.relink(byValInfo-&gt;badTypeJump, CodeLocationLabel(byValInfo-&gt;stubRoutine-&gt;code().code()));
&gt; (gdb) p byValInfo-&gt;badTypeJump
&gt; $1 = {&lt;JSC::CodeLocationCommon&gt; = {&lt;JSC::MacroAssemblerCodePtr&gt; = {m_value = 0x40022c10}, &lt;No data fields&gt;}, &lt;No data fields&gt;}
&gt; (gdb) x/i 0x40022c10
&gt;    0x40022c10:  ldr     r4, [r0, #3071384]

This looks suspicious.  Why are we loading from r0 at such a *HUGE* offset?

&gt; (gdb) enable 2
&gt; (gdb) c
&gt; Continuing.
&gt; 
&gt; Breakpoint 2, JSC::ARMAssembler::getLdrImmAddress (insn=0x40022c0c) at /home/bgabor/WebKit/Source/JavaScriptCore/assembler/ARMAssembler.h:783
&gt; 783                 if ((*insn &amp; LdrPcImmediateInstructionMask) != LdrPcImmediateInstruction) {
&gt; (gdb) x/i 0x40022c0c
&gt;    0x40022c0c:  bne     0x40022e60

So, you&apos;re emitting a bne for patchableBranch32, and then you&apos;re trying to patch a blx when relink() is called.

That&apos;s your bug.

Either make relink() work with bne, or make patchableBranch32 emit a blx.

&gt; (gdb) x/i (0x40022c0c + 0x4)
&gt;    0x40022c10:  ldr     r4, [r0, #3071384]
&gt; (gdb) c
&gt; Continuing.
&gt; ASSERTION FAILED: (*insn &amp; BlxInstructionMask) == BlxInstruction
&gt; /home/bgabor/WebKit/Source/JavaScriptCore/assembler/ARMAssembler.h(785) : static JSC::ARMWord* JSC::ARMAssembler::getLdrImmAddress(JSC::ARMWord*)
&gt; 1   0x8f134 /home/bgabor/jsc/test-crash/jsc() [0x8f134]
&gt; 2   0x93b08 /home/bgabor/jsc/test-crash/jsc() [0x93b08]
&gt; 3   0x20c6bc /home/bgabor/jsc/test-crash/jsc() [0x20c6bc]
&gt; 4   0x20ce7c /home/bgabor/jsc/test-crash/jsc() [0x20ce7c]
&gt; 5   0x20cd84 /home/bgabor/jsc/test-crash/jsc() [0x20cd84]
&gt; 6   0x2d0028 /home/bgabor/jsc/test-crash/jsc() [0x2d0028]
&gt; 7   0x2edb88 /home/bgabor/jsc/test-crash/jsc() [0x2edb88]
&gt; 8   0x2e3da0 /home/bgabor/jsc/test-crash/jsc() [0x2e3da0]
&gt; 9   0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 10  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 11  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 12  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 13  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 14  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 15  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 16  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 17  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 18  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 19  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 20  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 21  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 22  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 23  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 24  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 25  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 26  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 27  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 28  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 29  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 30  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 31  0x2e3b48 /home/bgabor/jsc/test-crash/jsc() [0x2e3b48]
&gt; 
&gt; Program received signal SIGSEGV, Segmentation fault.
&gt; 0x0008f144 in JSC::ARMAssembler::getLdrImmAddress (insn=0x40022c0c) at /home/bgabor/WebKit/Source/JavaScriptCore/assembler/ARMAssembler.h:785
&gt; 785                     ASSERT((*insn &amp; BlxInstructionMask) == BlxInstruction);
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>751845</commentid>
    <comment_count>10</comment_count>
    <who name="Gabor Ballabas">gaborb</who>
    <bug_when>2012-10-26 04:21:53 -0700</bug_when>
    <thetext>(In reply to comment #9)

&gt; So, you&apos;re emitting a bne for patchableBranch32, and then you&apos;re trying to patch a blx when relink() is called.
&gt; 
&gt; That&apos;s your bug.
&gt; 
&gt; Either make relink() work with bne, or make patchableBranch32 emit a blx.
&gt; 

Thank you for your time and your advice. I will follow your suggestion and take a closer look at those areas you have mentioned.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>758629</commentid>
    <comment_count>11</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-11-05 09:56:36 -0800</bug_when>
    <thetext>any progress?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>759535</commentid>
    <comment_count>12</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-11-06 04:47:11 -0800</bug_when>
    <thetext>ping?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>761680</commentid>
    <comment_count>13</comment_count>
      <attachid>173021</attachid>
    <who name="Gabor Ballabas">gaborb</who>
    <bug_when>2012-11-08 05:13:54 -0800</bug_when>
    <thetext>Created attachment 173021
Workaround patch

This is just a workaround to make the ARM tester buildbot happy.
Meanwhile I&apos;m going to work on the proper fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>761693</commentid>
    <comment_count>14</comment_count>
      <attachid>173021</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-11-08 05:41:40 -0800</bug_when>
    <thetext>Comment on attachment 173021
Workaround patch

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

I think we should push this workaround as soon as possible to make ARM_TRADITIONAL tests happy.
And I hope Zoltán and Gábor will manage to fix the bug properly on the following weeks.

Zoltán? Filip?

&gt; Source/JavaScriptCore/jit/JITInlineMethods.h:182
&gt; +/* FIXME: Check if we can do better in ARM. For now we just want to avoid the

s/in ARM/on ARM

&gt; Source/JavaScriptCore/jit/JITInlineMethods.h:183
&gt; + * following javascriptcore test crashes:

s/crashes/crash</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>761755</commentid>
    <comment_count>15</comment_count>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-11-08 07:13:06 -0800</bug_when>
    <thetext>I will check this next week.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>762824</commentid>
    <comment_count>16</comment_count>
      <attachid>173263</attachid>
    <who name="Gabor Ballabas">gaborb</who>
    <bug_when>2012-11-09 04:26:25 -0800</bug_when>
    <thetext>Created attachment 173263
Rebased fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772685</commentid>
    <comment_count>17</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-11-21 02:27:23 -0800</bug_when>
    <thetext>(In reply to comment #16)
&gt; Created an attachment (id=173263) [details]
&gt; Rebased fix

Is this workaround still valid? What about the proper fix?
The ARM traditional assembler became useless ~1.5 months before.
Is there any chance to be fixed in the near future?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>772695</commentid>
    <comment_count>18</comment_count>
      <attachid>173263</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2012-11-21 02:37:02 -0800</bug_when>
    <thetext>Comment on attachment 173263
Rebased fix

I don&apos;t particularly like this fix.  First, it&apos;s masking the problem that relink() is assuming that something is a blx when it&apos;s actually a bne.  Second, if you really want to disable patching of get_by_val/put_by_val then you should do it without preprocessor macros in the JIT&apos;s code.  That&apos;s just ugly and error-prone.

I strongly recommend that you do the *really simple* fix of making relink() work with bne, or making patchableBranch32() emit a blx.

But I will defer to Zoltan&apos;s opinion on this.  Zoltan, do you think that what I&apos;m suggesting is sensible?  Or do you feel strongly that we should land this workaround as-is?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775348</commentid>
    <comment_count>19</comment_count>
      <attachid>175969</attachid>
    <who name="Gabor Ballabas">gaborb</who>
    <bug_when>2012-11-26 04:28:35 -0800</bug_when>
    <thetext>Created attachment 175969
Proper fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775377</commentid>
    <comment_count>20</comment_count>
      <attachid>175969</attachid>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-11-26 05:35:16 -0800</bug_when>
    <thetext>Comment on attachment 175969
Proper fix

Thanks for the fix.

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

&gt; Source/JavaScriptCore/assembler/MacroAssemblerARM.h:816
&gt; +        ARMWord tmp = (static_cast&lt;unsigned&gt;(imm.m_value) == 0x80000000) ? ARMAssembler::InvalidImmediate : m_assembler.getOp2(-imm.m_value);
&gt; +        if (tmp != ARMAssembler::InvalidImmediate)
&gt; +            m_assembler.cmn(reg, tmp);
&gt; +        else
&gt; +            m_assembler.cmp(reg, m_assembler.getImm(imm.m_value, ARMRegisters::S0));

Please move this code duplication to a common subfunction.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775407</commentid>
    <comment_count>21</comment_count>
      <attachid>175985</attachid>
    <who name="Gabor Ballabas">gaborb</who>
    <bug_when>2012-11-26 06:05:23 -0800</bug_when>
    <thetext>Created attachment 175985
Refactoring code duplication.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775412</commentid>
    <comment_count>22</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-26 06:07:53 -0800</bug_when>
    <thetext>Attachment 175985 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/JavaScriptCore/ChangeLog&apos;, u&apos;Source...&quot; exit_code: 1
Source/JavaScriptCore/assembler/MacroAssemblerARM.h:840:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 1 in 3 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>775413</commentid>
    <comment_count>23</comment_count>
      <attachid>175987</attachid>
    <who name="Gabor Ballabas">gaborb</who>
    <bug_when>2012-11-26 06:10:31 -0800</bug_when>
    <thetext>Created attachment 175987
Style fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775426</commentid>
    <comment_count>24</comment_count>
      <attachid>175993</attachid>
    <who name="Gabor Ballabas">gaborb</who>
    <bug_when>2012-11-26 06:28:53 -0800</bug_when>
    <thetext>Created attachment 175993
Refactoring compare32 to private.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775429</commentid>
    <comment_count>25</comment_count>
      <attachid>175994</attachid>
    <who name="Gabor Ballabas">gaborb</who>
    <bug_when>2012-11-26 06:34:28 -0800</bug_when>
    <thetext>Created attachment 175994
Style fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775431</commentid>
    <comment_count>26</comment_count>
      <attachid>175994</attachid>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-11-26 06:36:27 -0800</bug_when>
    <thetext>Comment on attachment 175994
Style fix

Thanks, r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775441</commentid>
    <comment_count>27</comment_count>
      <attachid>175994</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-11-26 06:48:31 -0800</bug_when>
    <thetext>Comment on attachment 175994
Style fix

Clearing flags on attachment: 175994

Committed r135717: &lt;http://trac.webkit.org/changeset/135717&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775442</commentid>
    <comment_count>28</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-11-26 06:48:39 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>776504</commentid>
    <comment_count>29</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-11-27 01:57:39 -0800</bug_when>
    <thetext>*** Bug 101832 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>170587</attachid>
            <date>2012-10-25 01:39:57 -0700</date>
            <delta_ts>2012-11-08 05:13:54 -0800</delta_ts>
            <desc>Hack for disabling one of the array-related optimizations.</desc>
            <filename>disable-array-optimization-hack.patch</filename>
            <type>text/plain</type>
            <size>892</size>
            <attacher name="Gabor Ballabas">gaborb</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1YnMuY3BwIGIvU291
cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRTdHVicy5jcHAKaW5kZXggYTE2YjMyOC4uOWEwYzNj
ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRTdHVicy5jcHAKKysr
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRTdHVicy5jcHAKQEAgLTI0NzcsNiArMjQ3
Nyw3IEBAIERFRklORV9TVFVCX0ZVTkNUSU9OKEVuY29kZWRKU1ZhbHVlLCBvcF9nZXRfYnlfdmFs
KQogICAgICAgICBCeVZhbEluZm8mIGJ5VmFsSW5mbyA9IGNhbGxGcmFtZS0+Y29kZUJsb2NrKCkt
PmdldEJ5VmFsSW5mbyhieXRlY29kZU9mZnNldCAtIDEpOwogICAgICAgICBBU1NFUlQoIWJ5VmFs
SW5mby5zdHViUm91dGluZSk7CiAgICAgICAgIAorI2lmIDAKICAgICAgICAgaWYgKGhhc09wdGlt
aXphYmxlSW5kZXhpbmcob2JqZWN0LT5zdHJ1Y3R1cmUoKSkpIHsKICAgICAgICAgICAgIC8vIEF0
dGVtcHQgdG8gb3B0aW1pemUuCiAgICAgICAgICAgICBKSVRBcnJheU1vZGUgYXJyYXlNb2RlID0g
aml0QXJyYXlNb2RlRm9yU3RydWN0dXJlKG9iamVjdC0+c3RydWN0dXJlKCkpOwpAQCAtMjQ4NSw2
ICsyNDg2LDcgQEAgREVGSU5FX1NUVUJfRlVOQ1RJT04oRW5jb2RlZEpTVmFsdWUsIG9wX2dldF9i
eV92YWwpCiAgICAgICAgICAgICAgICAgZGlkT3B0aW1pemUgPSB0cnVlOwogICAgICAgICAgICAg
fQogICAgICAgICB9CisjZW5kaWYKICAgICAgICAgCiAgICAgICAgIGlmICghZGlkT3B0aW1pemUp
IHsKICAgICAgICAgICAgIC8vIElmIHdlIHRha2Ugc2xvdyBwYXRoIG1vcmUgdGhhbiAxMCB0aW1l
cyB3aXRob3V0IHBhdGNoaW5nIHRoZW4gbWFrZSBzdXJlIHdlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>173021</attachid>
            <date>2012-11-08 05:13:54 -0800</date>
            <delta_ts>2012-11-09 04:26:25 -0800</delta_ts>
            <desc>Workaround patch</desc>
            <filename>arm-test-crash-workaround-with-changelog.patch</filename>
            <type>text/plain</type>
            <size>2809</size>
            <attacher name="Gabor Ballabas">gaborb</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGYyMzVkOWYuLmQ2ZmU2ZDQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTExLTA4ICBHYWJvciBCYWxsYWJh
cyAgPGdhYm9yYkBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAgW1F0XVtBUk1dIFJFR1JFU1NJ
T04ocjEzMDgyNik6IEl0IG1hZGUgMzMgSlNDIHRlc3QgYW5kIDQ2NiBsYXlvdXQgdGVzdHMgY3Jh
c2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4ODU3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV29ya2Fy
b3VuZCBhbGxvd2luZyB0aGUgQVJNIHRlc3RlciBidWlsZGJvdCB0byB3b3JrIGFnYWluIHVudGls
IHRoZQorICAgICAgICBwcm9wZXIgZml4IGlzIHJlYWR5LgorCisgICAgICAgICogaml0L0pJVElu
bGluZU1ldGhvZHMuaDoKKyAgICAgICAgKEpTQzo6SklUOjplbmRVbmludGVycnVwdGVkU2VxdWVu
Y2UpOgorICAgICAgICAqIGppdC9KSVRTdHVicy5jcHA6CisgICAgICAgIChKU0M6OkRFRklORV9T
VFVCX0ZVTkNUSU9OKToKKwogMjAxMi0xMS0wNyAgTWFyayBIYWhuZW5iZXJnICA8bWhhaG5lbmJl
cmdAYXBwbGUuY29tPgogCiAgICAgICAgIFdlYWtCbG9ja3Mgc2hvdWxkIGJlIEhlYXBCbG9ja3MK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUSW5saW5lTWV0aG9kcy5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRJbmxpbmVNZXRob2RzLmgKaW5kZXggNDEw
YmRmNy4uYzhmMmUyMSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRJ
bmxpbmVNZXRob2RzLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRJbmxpbmVN
ZXRob2RzLmgKQEAgLTE3OSw3ICsxNzksMTQgQEAgQUxXQVlTX0lOTElORSB2b2lkIEpJVDo6ZW5k
VW5pbnRlcnJ1cHRlZFNlcXVlbmNlKGludCBpbnNuU3BhY2UsIGludCBjb25zdFNwYWNlLAogICAg
ICAqIGNhbGN1bGF0aW9uIG9mIGxlbmd0aCBvZiB1bmludGVycnVwdGVkIHNlcXVlbmNlLiBTbywg
dGhlIGluc25TcGFjZSBhbmQKICAgICAgKiBjb25zdFNwYWNlIHNob3VsZCBiZSB1cHBlciBsaW1p
dCBpbnN0ZWFkIG9mIGhhcmQgbGltaXQuCiAgICAgICovCi0jaWYgQ1BVKFNINCkKKy8qIEZJWE1F
OiBDaGVjayBpZiB3ZSBjYW4gZG8gYmV0dGVyIGluIEFSTS4gRm9yIG5vdyB3ZSBqdXN0IHdhbnQg
dG8gYXZvaWQgdGhlCisgKiBmb2xsb3dpbmcgamF2YXNjcmlwdGNvcmUgdGVzdCBjcmFzaGVzOgor
ICogZWNtYS9GdW5jdGlvbk9iamVjdHMvMTUuMy4xLjEtMy5qcworICogZWNtYS9GdW5jdGlvbk9i
amVjdHMvMTUuMy4yLjEtMy5qcworICogZWNtYS9GdW5jdGlvbk9iamVjdHMvMTUuMy41LTEuanMK
KyAqIEZvciBkZXRhaWxzIHNlZTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTk4ODU3CisgKi8KKyNpZiBDUFUoU0g0KSB8fCBDUFUoQVJNX1RSQURJVElPTkFMKQogICAg
IGlmICgoZHN0ID4gMTUpIHx8IChkc3QgPCAtMTYpKSB7CiAgICAgICAgIGluc25TcGFjZSArPSA4
OwogICAgICAgICBjb25zdFNwYWNlICs9IDI7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaml0L0pJVFN0dWJzLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1
YnMuY3BwCmluZGV4IDVkZGI5OGQuLjUyMzkzZGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9qaXQvSklUU3R1YnMuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQv
SklUU3R1YnMuY3BwCkBAIC0yMzQ3LDYgKzIzNDcsMTAgQEAgREVGSU5FX1NUVUJfRlVOQ1RJT04o
RW5jb2RlZEpTVmFsdWUsIG9wX2dldF9ieV92YWwpCiAgICAgICAgIEJ5VmFsSW5mbyYgYnlWYWxJ
bmZvID0gY2FsbEZyYW1lLT5jb2RlQmxvY2soKS0+Z2V0QnlWYWxJbmZvKGJ5dGVjb2RlT2Zmc2V0
IC0gMSk7CiAgICAgICAgIEFTU0VSVCghYnlWYWxJbmZvLnN0dWJSb3V0aW5lKTsKICAgICAgICAg
CisvKiBGSVhNRTogVGVtcG9yYXJpbHkgZGlzYWJsaW5nIHRoaXMgY29kZSBvbiBBUk0gYmVjYXVz
ZSBvZiBhIGxvdCBvZiBjcmFzaGluZyB0ZXN0cy4KKyAqIEZvciBkZXRhaWxzIHNlZTogaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4ODU3CisgKi8KKyNpZiAhQ1BVKEFS
TV9UUkFESVRJT05BTCkKICAgICAgICAgaWYgKGhhc09wdGltaXphYmxlSW5kZXhpbmcob2JqZWN0
LT5zdHJ1Y3R1cmUoKSkpIHsKICAgICAgICAgICAgIC8vIEF0dGVtcHQgdG8gb3B0aW1pemUuCiAg
ICAgICAgICAgICBKSVRBcnJheU1vZGUgYXJyYXlNb2RlID0gaml0QXJyYXlNb2RlRm9yU3RydWN0
dXJlKG9iamVjdC0+c3RydWN0dXJlKCkpOwpAQCAtMjM1NSw2ICsyMzU5LDcgQEAgREVGSU5FX1NU
VUJfRlVOQ1RJT04oRW5jb2RlZEpTVmFsdWUsIG9wX2dldF9ieV92YWwpCiAgICAgICAgICAgICAg
ICAgZGlkT3B0aW1pemUgPSB0cnVlOwogICAgICAgICAgICAgfQogICAgICAgICB9CisjZW5kaWYK
ICAgICAgICAgCiAgICAgICAgIGlmICghZGlkT3B0aW1pemUpIHsKICAgICAgICAgICAgIC8vIElm
IHdlIHRha2Ugc2xvdyBwYXRoIG1vcmUgdGhhbiAxMCB0aW1lcyB3aXRob3V0IHBhdGNoaW5nIHRo
ZW4gbWFrZSBzdXJlIHdlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>173263</attachid>
            <date>2012-11-09 04:26:25 -0800</date>
            <delta_ts>2012-11-26 04:28:35 -0800</delta_ts>
            <desc>Rebased fix</desc>
            <filename>arm-test-crash-workaround-rebased.patch</filename>
            <type>text/plain</type>
            <size>3448</size>
            <attacher name="Gabor Ballabas">gaborb</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IDM5MDQyNGMuLjk4MTQ4ZTYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTExLTA5ICBHYWJvciBCYWxsYWJh
cyAgPGdhYm9yYkBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAgW1F0XVtBUk1dIFJFR1JFU1NJ
T04ocjEzMDgyNik6IEl0IG1hZGUgMzMgSlNDIHRlc3QgYW5kIDQ2NiBsYXlvdXQgdGVzdHMgY3Jh
c2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4ODU3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV29ya2Fy
b3VuZCBhbGxvd2luZyB0aGUgQVJNIHRlc3RlciBidWlsZGJvdCB0byB3b3JrIGFnYWluIHVudGls
IHRoZQorICAgICAgICBwcm9wZXIgZml4IGlzIHJlYWR5LgorCisgICAgICAgICogaml0L0pJVElu
bGluZXMuaDoKKyAgICAgICAgKEpTQzo6SklUOjplbmRVbmludGVycnVwdGVkU2VxdWVuY2UpOgor
ICAgICAgICAqIGppdC9KSVRTdHVicy5jcHA6CisgICAgICAgIChKU0M6OkRFRklORV9TVFVCX0ZV
TkNUSU9OKToKKwogMjAxMi0xMS0wOCAgRmlsaXAgUGl6bG8gIDxmcGl6bG9AYXBwbGUuY29tPgog
CiAgICAgICAgIEFycmF5UHJvdG90eXBlLmggc2hvdWxkIGhhdmUgY29ycmVjdCBpbmRlbnRhdGlv
bgpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVRJbmxpbmVzLmggYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVElubGluZXMuaAppbmRleCBlNmY5NWI5Li5iMmRi
MGViIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVElubGluZXMuaAor
KysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVElubGluZXMuaApAQCAtMTc5LDcgKzE3
OSwxNCBAQCBBTFdBWVNfSU5MSU5FIHZvaWQgSklUOjplbmRVbmludGVycnVwdGVkU2VxdWVuY2Uo
aW50IGluc25TcGFjZSwgaW50IGNvbnN0U3BhY2UsCiAgICAgICogY2FsY3VsYXRpb24gb2YgbGVu
Z3RoIG9mIHVuaW50ZXJydXB0ZWQgc2VxdWVuY2UuIFNvLCB0aGUgaW5zblNwYWNlIGFuZAogICAg
ICAqIGNvbnN0U3BhY2Ugc2hvdWxkIGJlIHVwcGVyIGxpbWl0IGluc3RlYWQgb2YgaGFyZCBsaW1p
dC4KICAgICAgKi8KLSNpZiBDUFUoU0g0KQorLyogRklYTUU6IENoZWNrIGlmIHdlIGNhbiBkbyBi
ZXR0ZXIgb24gQVJNLiBGb3Igbm93IHdlIGp1c3Qgd2FudCB0byBhdm9pZCB0aGUKKyAqIGZvbGxv
d2luZyBqYXZhc2NyaXB0Y29yZSB0ZXN0IGNyYXNoZXM6CisgKiBlY21hL0Z1bmN0aW9uT2JqZWN0
cy8xNS4zLjEuMS0zLmpzCisgKiBlY21hL0Z1bmN0aW9uT2JqZWN0cy8xNS4zLjIuMS0zLmpzCisg
KiBlY21hL0Z1bmN0aW9uT2JqZWN0cy8xNS4zLjUtMS5qcworICovCisjaWYgQ1BVKFNINCkgfHwg
Q1BVKEFSTV9UUkFESVRJT05BTCkKKwogICAgIGlmICgoZHN0ID4gMTUpIHx8IChkc3QgPCAtMTYp
KSB7CiAgICAgICAgIGluc25TcGFjZSArPSA4OwogICAgICAgICBjb25zdFNwYWNlICs9IDI7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVFN0dWJzLmNwcCBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1YnMuY3BwCmluZGV4IDUyMWRmYWMuLmRjOWMyZTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1YnMuY3BwCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUU3R1YnMuY3BwCkBAIC0yMzUyLDYgKzIzNTIs
OCBAQCBERUZJTkVfU1RVQl9GVU5DVElPTihFbmNvZGVkSlNWYWx1ZSwgb3BfZ2V0X2J5X3ZhbCkK
ICAgICAgICAgQnlWYWxJbmZvJiBieVZhbEluZm8gPSBjYWxsRnJhbWUtPmNvZGVCbG9jaygpLT5n
ZXRCeVZhbEluZm8oYnl0ZWNvZGVPZmZzZXQgLSAxKTsKICAgICAgICAgQVNTRVJUKCFieVZhbElu
Zm8uc3R1YlJvdXRpbmUpOwogICAgICAgICAKKy8qIEZJWE1FOiBUZW1wb3JhcmlseSBkaXNhYmxp
bmcgdGhpcyBjb2RlIG9uIEFSTSBiZWNhdXNlIG9mIGEgbG90IG9mIGNyYXNoaW5nIHRlc3RzLiAq
LworI2lmICFDUFUoQVJNX1RSQURJVElPTkFMKQogICAgICAgICBpZiAoaGFzT3B0aW1pemFibGVJ
bmRleGluZyhvYmplY3QtPnN0cnVjdHVyZSgpKSkgewogICAgICAgICAgICAgLy8gQXR0ZW1wdCB0
byBvcHRpbWl6ZS4KICAgICAgICAgICAgIEpJVEFycmF5TW9kZSBhcnJheU1vZGUgPSBqaXRBcnJh
eU1vZGVGb3JTdHJ1Y3R1cmUob2JqZWN0LT5zdHJ1Y3R1cmUoKSk7CkBAIC0yMzYwLDYgKzIzNjIs
NyBAQCBERUZJTkVfU1RVQl9GVU5DVElPTihFbmNvZGVkSlNWYWx1ZSwgb3BfZ2V0X2J5X3ZhbCkK
ICAgICAgICAgICAgICAgICBkaWRPcHRpbWl6ZSA9IHRydWU7CiAgICAgICAgICAgICB9CiAgICAg
ICAgIH0KKyNlbmRpZgogICAgICAgICAKICAgICAgICAgaWYgKCFkaWRPcHRpbWl6ZSkgewogICAg
ICAgICAgICAgLy8gSWYgd2UgdGFrZSBzbG93IHBhdGggbW9yZSB0aGFuIDEwIHRpbWVzIHdpdGhv
dXQgcGF0Y2hpbmcgdGhlbiBtYWtlIHN1cmUgd2UKQEAgLTI0ODUsNyArMjQ4OCw5IEBAIERFRklO
RV9TVFVCX0ZVTkNUSU9OKHZvaWQsIG9wX3B1dF9ieV92YWwpCiAgICAgICAgIEFTU0VSVChieXRl
Y29kZU9mZnNldCk7CiAgICAgICAgIEJ5VmFsSW5mbyYgYnlWYWxJbmZvID0gY2FsbEZyYW1lLT5j
b2RlQmxvY2soKS0+Z2V0QnlWYWxJbmZvKGJ5dGVjb2RlT2Zmc2V0IC0gMSk7CiAgICAgICAgIEFT
U0VSVCghYnlWYWxJbmZvLnN0dWJSb3V0aW5lKTsKLSAgICAgICAgCisKKyAvKiBGSVhNRTogVGVt
cG9yYXJpbHkgZGlzYWJsaW5nIHRoaXMgY29kZSBvbiBBUk0gYmVjYXVzZSBvZiBhIGxvdCBvZiBj
cmFzaGluZyB0ZXN0cy4gKi8KKyNpZiAhQ1BVKEFSTV9UUkFESVRJT05BTCkKICAgICAgICAgaWYg
KGhhc09wdGltaXphYmxlSW5kZXhpbmcob2JqZWN0LT5zdHJ1Y3R1cmUoKSkpIHsKICAgICAgICAg
ICAgIC8vIEF0dGVtcHQgdG8gb3B0aW1pemUuCiAgICAgICAgICAgICBKSVRBcnJheU1vZGUgYXJy
YXlNb2RlID0gaml0QXJyYXlNb2RlRm9yU3RydWN0dXJlKG9iamVjdC0+c3RydWN0dXJlKCkpOwpA
QCAtMjQ5NCw2ICsyNDk5LDcgQEAgREVGSU5FX1NUVUJfRlVOQ1RJT04odm9pZCwgb3BfcHV0X2J5
X3ZhbCkKICAgICAgICAgICAgICAgICBkaWRPcHRpbWl6ZSA9IHRydWU7CiAgICAgICAgICAgICB9
CiAgICAgICAgIH0KKyNlbmRpZgogCiAgICAgICAgIGlmICghZGlkT3B0aW1pemUpIHsKICAgICAg
ICAgICAgIC8vIElmIHdlIHRha2Ugc2xvdyBwYXRoIG1vcmUgdGhhbiAxMCB0aW1lcyB3aXRob3V0
IHBhdGNoaW5nIHRoZW4gbWFrZSBzdXJlIHdlCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175969</attachid>
            <date>2012-11-26 04:28:35 -0800</date>
            <delta_ts>2012-11-26 06:05:23 -0800</delta_ts>
            <desc>Proper fix</desc>
            <filename>test-crash-fix.patch</filename>
            <type>text/plain</type>
            <size>2587</size>
            <attacher name="Gabor Ballabas">gaborb</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGJhMjk3OWIuLjUxNmRmODQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTExLTI2ICBHYWJvciBCYWxsYWJh
cyAgPGdhYm9yYkBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAgW1F0XVtBUk1dIFJFR1JFU1NJ
T04ocjEzMDgyNik6IEl0IG1hZGUgMzMgSlNDIHRlc3QgYW5kIDQ2NiBsYXlvdXQgdGVzdHMgY3Jh
c2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4ODU3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVt
ZW50IGEgbmV3IHZlcnNpb24gb2YgcGF0Y2hhYmxlQnJhbmNoMzIgdG8gZml4IGNyYXNoaW5nIEpT
QworICAgICAgICB0ZXN0cy4KKworICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5o
OgorICAgICAgICAoTWFjcm9Bc3NlbWJsZXIpOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fz
c2VtYmxlckFSTS5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlckFSTTo6cGF0Y2hhYmxl
QnJhbmNoMzIpOgorICAgICAgICAoTWFjcm9Bc3NlbWJsZXJBUk0pOgorCiAyMDEyLTExLTIxICBG
aWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAgQW55IGZ1bmN0aW9uIHRo
YXQgY2FuIGxvZyB0aGluZ3Mgc2hvdWxkIGJlIGFibGUgdG8gZWFzaWx5IGxvZyB0aGVtIHRvIGEg
bWVtb3J5IGJ1ZmZlciBhcyB3ZWxsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1i
bGVyL01hY3JvQXNzZW1ibGVyLmgKaW5kZXggNjQyYjVjYS4uZGNmZGQ0OCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIuaApAQCAtMjY2LDEy
ICsyNjYsMTQgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgcmV0dXJuIFBhdGNoYWJsZUp1bXAo
YnJhbmNoVGVzdDMyKGNvbmQsIHJlZywgbWFzaykpOwogICAgIH0KLSAgICAKKyNlbmRpZiAvLyAh
Q1BVKEFSTV9USFVNQjIpCisKKyNpZiAhQ1BVKEFSTSkKICAgICBQYXRjaGFibGVKdW1wIHBhdGNo
YWJsZUJyYW5jaDMyKFJlbGF0aW9uYWxDb25kaXRpb24gY29uZCwgUmVnaXN0ZXJJRCByZWcsIFRy
dXN0ZWRJbW0zMiBpbW0pCiAgICAgewogICAgICAgICByZXR1cm4gUGF0Y2hhYmxlSnVtcChicmFu
Y2gzMihjb25kLCByZWcsIGltbSkpOwogICAgIH0KLSNlbmRpZgorI2VuZGlmIC8vICEoQ1BVKEFS
TSkKIAogICAgIHZvaWQganVtcChMYWJlbCB0YXJnZXQpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTS5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTS5oCmluZGV4IDljNzdl
OTMuLmUyOGUwMzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJBUk0uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L01hY3JvQXNzZW1ibGVyQVJNLmgKQEAgLTgwNyw2ICs4MDcsMTggQEAgcHVibGljOgogICAgICAg
ICByZXR1cm4gSnVtcChtX2Fzc2VtYmxlci5qbXAoQVJNQ29uZGl0aW9uKGNvbmQpKSk7CiAgICAg
fQogCisgICAgUGF0Y2hhYmxlSnVtcCBwYXRjaGFibGVCcmFuY2gzMihSZWxhdGlvbmFsQ29uZGl0
aW9uIGNvbmQsIFJlZ2lzdGVySUQgcmVnLCBUcnVzdGVkSW1tMzIgaW1tKQorICAgIHsKKyAgICAg
ICAgQVJNV29yZCB0bXAgPSAoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGltbS5tX3ZhbHVlKSA9PSAw
eDgwMDAwMDAwKSA/IEFSTUFzc2VtYmxlcjo6SW52YWxpZEltbWVkaWF0ZSA6IG1fYXNzZW1ibGVy
LmdldE9wMigtaW1tLm1fdmFsdWUpOworICAgICAgICBpZiAodG1wICE9IEFSTUFzc2VtYmxlcjo6
SW52YWxpZEltbWVkaWF0ZSkKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmNtbihyZWcsIHRtcCk7
CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmNtcChyZWcsIG1fYXNzZW1i
bGVyLmdldEltbShpbW0ubV92YWx1ZSwgQVJNUmVnaXN0ZXJzOjpTMCkpOworICAgICAgICBKdW1w
IGp1bXAobV9hc3NlbWJsZXIubG9hZEJyYW5jaFRhcmdldChBUk1SZWdpc3RlcnM6OlMxLCBBUk1D
b25kaXRpb24oY29uZCksIHRydWUpKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuYngoQVJNUmVnaXN0
ZXJzOjpTMSwgQVJNQ29uZGl0aW9uKGNvbmQpKTsKKyAgICAgICAgcmV0dXJuIFBhdGNoYWJsZUp1
bXAoanVtcCk7CisgICAgfQorCiAgICAgdm9pZCBicmVha3BvaW50KCkKICAgICB7CiAgICAgICAg
IG1fYXNzZW1ibGVyLmJrcHQoMCk7Cg==
</data>
<flag name="review"
          id="191608"
          type_id="1"
          status="-"
          setter="zherczeg"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175985</attachid>
            <date>2012-11-26 06:05:23 -0800</date>
            <delta_ts>2012-11-26 06:10:31 -0800</delta_ts>
            <desc>Refactoring code duplication.</desc>
            <filename>test-crash-fix.patch</filename>
            <type>text/plain</type>
            <size>3520</size>
            <attacher name="Gabor Ballabas">gaborb</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGJhMjk3OWIuLjUxNmRmODQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTExLTI2ICBHYWJvciBCYWxsYWJh
cyAgPGdhYm9yYkBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAgW1F0XVtBUk1dIFJFR1JFU1NJ
T04ocjEzMDgyNik6IEl0IG1hZGUgMzMgSlNDIHRlc3QgYW5kIDQ2NiBsYXlvdXQgdGVzdHMgY3Jh
c2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4ODU3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVt
ZW50IGEgbmV3IHZlcnNpb24gb2YgcGF0Y2hhYmxlQnJhbmNoMzIgdG8gZml4IGNyYXNoaW5nIEpT
QworICAgICAgICB0ZXN0cy4KKworICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5o
OgorICAgICAgICAoTWFjcm9Bc3NlbWJsZXIpOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fz
c2VtYmxlckFSTS5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlckFSTTo6cGF0Y2hhYmxl
QnJhbmNoMzIpOgorICAgICAgICAoTWFjcm9Bc3NlbWJsZXJBUk0pOgorCiAyMDEyLTExLTIxICBG
aWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAgQW55IGZ1bmN0aW9uIHRo
YXQgY2FuIGxvZyB0aGluZ3Mgc2hvdWxkIGJlIGFibGUgdG8gZWFzaWx5IGxvZyB0aGVtIHRvIGEg
bWVtb3J5IGJ1ZmZlciBhcyB3ZWxsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1i
bGVyL01hY3JvQXNzZW1ibGVyLmgKaW5kZXggNjQyYjVjYS4uZGNmZGQ0OCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIuaApAQCAtMjY2LDEy
ICsyNjYsMTQgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgcmV0dXJuIFBhdGNoYWJsZUp1bXAo
YnJhbmNoVGVzdDMyKGNvbmQsIHJlZywgbWFzaykpOwogICAgIH0KLSAgICAKKyNlbmRpZiAvLyAh
Q1BVKEFSTV9USFVNQjIpCisKKyNpZiAhQ1BVKEFSTSkKICAgICBQYXRjaGFibGVKdW1wIHBhdGNo
YWJsZUJyYW5jaDMyKFJlbGF0aW9uYWxDb25kaXRpb24gY29uZCwgUmVnaXN0ZXJJRCByZWcsIFRy
dXN0ZWRJbW0zMiBpbW0pCiAgICAgewogICAgICAgICByZXR1cm4gUGF0Y2hhYmxlSnVtcChicmFu
Y2gzMihjb25kLCByZWcsIGltbSkpOwogICAgIH0KLSNlbmRpZgorI2VuZGlmIC8vICEoQ1BVKEFS
TSkKIAogICAgIHZvaWQganVtcChMYWJlbCB0YXJnZXQpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTS5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTS5oCmluZGV4IDljNzdl
OTMuLjlmMmYxMWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJBUk0uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L01hY3JvQXNzZW1ibGVyQVJNLmgKQEAgLTU3MCwxMSArNTcwLDcgQEAgcHVibGljOgogCiAgICAg
SnVtcCBicmFuY2gzMihSZWxhdGlvbmFsQ29uZGl0aW9uIGNvbmQsIFJlZ2lzdGVySUQgbGVmdCwg
VHJ1c3RlZEltbTMyIHJpZ2h0LCBpbnQgdXNlQ29uc3RhbnRQb29sID0gMCkKICAgICB7Ci0gICAg
ICAgIEFSTVdvcmQgdG1wID0gKHN0YXRpY19jYXN0PHVuc2lnbmVkPihyaWdodC5tX3ZhbHVlKSA9
PSAweDgwMDAwMDAwKSA/IEFSTUFzc2VtYmxlcjo6SW52YWxpZEltbWVkaWF0ZSA6IG1fYXNzZW1i
bGVyLmdldE9wMigtcmlnaHQubV92YWx1ZSk7Ci0gICAgICAgIGlmICh0bXAgIT0gQVJNQXNzZW1i
bGVyOjpJbnZhbGlkSW1tZWRpYXRlKQotICAgICAgICAgICAgbV9hc3NlbWJsZXIuY21uKGxlZnQs
IHRtcCk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmNtcChsZWZ0LCBt
X2Fzc2VtYmxlci5nZXRJbW0ocmlnaHQubV92YWx1ZSwgQVJNUmVnaXN0ZXJzOjpTMCkpOworICAg
ICAgICBjb21wYXJlMzIobGVmdCwgcmlnaHQpOwogICAgICAgICByZXR1cm4gSnVtcChtX2Fzc2Vt
Ymxlci5qbXAoQVJNQ29uZGl0aW9uKGNvbmQpLCB1c2VDb25zdGFudFBvb2wpKTsKICAgICB9CiAK
QEAgLTgwNyw2ICs4MDMsMTQgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gSnVtcChtX2Fzc2Vt
Ymxlci5qbXAoQVJNQ29uZGl0aW9uKGNvbmQpKSk7CiAgICAgfQogCisgICAgUGF0Y2hhYmxlSnVt
cCBwYXRjaGFibGVCcmFuY2gzMihSZWxhdGlvbmFsQ29uZGl0aW9uIGNvbmQsIFJlZ2lzdGVySUQg
cmVnLCBUcnVzdGVkSW1tMzIgaW1tKQorICAgIHsKKyAgICAgICAgY29tcGFyZTMyKHJlZywgaW1t
KTsKKyAgICAgICAgSnVtcCBqdW1wKG1fYXNzZW1ibGVyLmxvYWRCcmFuY2hUYXJnZXQoQVJNUmVn
aXN0ZXJzOjpTMSwgQVJNQ29uZGl0aW9uKGNvbmQpLCB0cnVlKSk7CisgICAgICAgIG1fYXNzZW1i
bGVyLmJ4KEFSTVJlZ2lzdGVyczo6UzEsIEFSTUNvbmRpdGlvbihjb25kKSk7CisgICAgICAgIHJl
dHVybiBQYXRjaGFibGVKdW1wKGp1bXApOworICAgIH0KKwogICAgIHZvaWQgYnJlYWtwb2ludCgp
CiAgICAgewogICAgICAgICBtX2Fzc2VtYmxlci5ia3B0KDApOwpAQCAtODMzLDYgKzgzNywxNCBA
QCBwdWJsaWM6CiAgICAgICAgIG1fYXNzZW1ibGVyLmJ4KGxpbmtSZWdpc3Rlcik7CiAgICAgfQog
CisgICAgdm9pZCBjb21wYXJlMzIoUmVnaXN0ZXJJRCBsZWZ0LCBUcnVzdGVkSW1tMzIgcmlnaHQp
IHsKKyAgICAgICAgQVJNV29yZCB0bXAgPSAoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHJpZ2h0Lm1f
dmFsdWUpID09IDB4ODAwMDAwMDApID8gQVJNQXNzZW1ibGVyOjpJbnZhbGlkSW1tZWRpYXRlIDog
bV9hc3NlbWJsZXIuZ2V0T3AyKC1yaWdodC5tX3ZhbHVlKTsKKyAgICAgICAgaWYgKHRtcCAhPSBB
Uk1Bc3NlbWJsZXI6OkludmFsaWRJbW1lZGlhdGUpCisgICAgICAgICAgICBtX2Fzc2VtYmxlci5j
bW4obGVmdCwgdG1wKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbV9hc3NlbWJsZXIuY21w
KGxlZnQsIG1fYXNzZW1ibGVyLmdldEltbShyaWdodC5tX3ZhbHVlLCBBUk1SZWdpc3RlcnM6OlMw
KSk7CisgICAgfQorCiAgICAgdm9pZCBjb21wYXJlMzIoUmVsYXRpb25hbENvbmRpdGlvbiBjb25k
LCBSZWdpc3RlcklEIGxlZnQsIFJlZ2lzdGVySUQgcmlnaHQsIFJlZ2lzdGVySUQgZGVzdCkKICAg
ICB7CiAgICAgICAgIG1fYXNzZW1ibGVyLmNtcChsZWZ0LCByaWdodCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175987</attachid>
            <date>2012-11-26 06:10:31 -0800</date>
            <delta_ts>2012-11-26 06:28:53 -0800</delta_ts>
            <desc>Style fix</desc>
            <filename>test-crash-fix.patch</filename>
            <type>text/plain</type>
            <size>3525</size>
            <attacher name="Gabor Ballabas">gaborb</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGJhMjk3OWIuLjUxNmRmODQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTExLTI2ICBHYWJvciBCYWxsYWJh
cyAgPGdhYm9yYkBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAgW1F0XVtBUk1dIFJFR1JFU1NJ
T04ocjEzMDgyNik6IEl0IG1hZGUgMzMgSlNDIHRlc3QgYW5kIDQ2NiBsYXlvdXQgdGVzdHMgY3Jh
c2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4ODU3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVt
ZW50IGEgbmV3IHZlcnNpb24gb2YgcGF0Y2hhYmxlQnJhbmNoMzIgdG8gZml4IGNyYXNoaW5nIEpT
QworICAgICAgICB0ZXN0cy4KKworICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5o
OgorICAgICAgICAoTWFjcm9Bc3NlbWJsZXIpOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fz
c2VtYmxlckFSTS5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlckFSTTo6cGF0Y2hhYmxl
QnJhbmNoMzIpOgorICAgICAgICAoTWFjcm9Bc3NlbWJsZXJBUk0pOgorCiAyMDEyLTExLTIxICBG
aWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAgQW55IGZ1bmN0aW9uIHRo
YXQgY2FuIGxvZyB0aGluZ3Mgc2hvdWxkIGJlIGFibGUgdG8gZWFzaWx5IGxvZyB0aGVtIHRvIGEg
bWVtb3J5IGJ1ZmZlciBhcyB3ZWxsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1i
bGVyL01hY3JvQXNzZW1ibGVyLmgKaW5kZXggNjQyYjVjYS4uZGNmZGQ0OCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIuaApAQCAtMjY2LDEy
ICsyNjYsMTQgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgcmV0dXJuIFBhdGNoYWJsZUp1bXAo
YnJhbmNoVGVzdDMyKGNvbmQsIHJlZywgbWFzaykpOwogICAgIH0KLSAgICAKKyNlbmRpZiAvLyAh
Q1BVKEFSTV9USFVNQjIpCisKKyNpZiAhQ1BVKEFSTSkKICAgICBQYXRjaGFibGVKdW1wIHBhdGNo
YWJsZUJyYW5jaDMyKFJlbGF0aW9uYWxDb25kaXRpb24gY29uZCwgUmVnaXN0ZXJJRCByZWcsIFRy
dXN0ZWRJbW0zMiBpbW0pCiAgICAgewogICAgICAgICByZXR1cm4gUGF0Y2hhYmxlSnVtcChicmFu
Y2gzMihjb25kLCByZWcsIGltbSkpOwogICAgIH0KLSNlbmRpZgorI2VuZGlmIC8vICEoQ1BVKEFS
TSkKIAogICAgIHZvaWQganVtcChMYWJlbCB0YXJnZXQpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTS5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTS5oCmluZGV4IDljNzdl
OTMuLjhiNTkzYmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJBUk0uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L01hY3JvQXNzZW1ibGVyQVJNLmgKQEAgLTU3MCwxMSArNTcwLDcgQEAgcHVibGljOgogCiAgICAg
SnVtcCBicmFuY2gzMihSZWxhdGlvbmFsQ29uZGl0aW9uIGNvbmQsIFJlZ2lzdGVySUQgbGVmdCwg
VHJ1c3RlZEltbTMyIHJpZ2h0LCBpbnQgdXNlQ29uc3RhbnRQb29sID0gMCkKICAgICB7Ci0gICAg
ICAgIEFSTVdvcmQgdG1wID0gKHN0YXRpY19jYXN0PHVuc2lnbmVkPihyaWdodC5tX3ZhbHVlKSA9
PSAweDgwMDAwMDAwKSA/IEFSTUFzc2VtYmxlcjo6SW52YWxpZEltbWVkaWF0ZSA6IG1fYXNzZW1i
bGVyLmdldE9wMigtcmlnaHQubV92YWx1ZSk7Ci0gICAgICAgIGlmICh0bXAgIT0gQVJNQXNzZW1i
bGVyOjpJbnZhbGlkSW1tZWRpYXRlKQotICAgICAgICAgICAgbV9hc3NlbWJsZXIuY21uKGxlZnQs
IHRtcCk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmNtcChsZWZ0LCBt
X2Fzc2VtYmxlci5nZXRJbW0ocmlnaHQubV92YWx1ZSwgQVJNUmVnaXN0ZXJzOjpTMCkpOworICAg
ICAgICBjb21wYXJlMzIobGVmdCwgcmlnaHQpOwogICAgICAgICByZXR1cm4gSnVtcChtX2Fzc2Vt
Ymxlci5qbXAoQVJNQ29uZGl0aW9uKGNvbmQpLCB1c2VDb25zdGFudFBvb2wpKTsKICAgICB9CiAK
QEAgLTgwNyw2ICs4MDMsMTQgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gSnVtcChtX2Fzc2Vt
Ymxlci5qbXAoQVJNQ29uZGl0aW9uKGNvbmQpKSk7CiAgICAgfQogCisgICAgUGF0Y2hhYmxlSnVt
cCBwYXRjaGFibGVCcmFuY2gzMihSZWxhdGlvbmFsQ29uZGl0aW9uIGNvbmQsIFJlZ2lzdGVySUQg
cmVnLCBUcnVzdGVkSW1tMzIgaW1tKQorICAgIHsKKyAgICAgICAgY29tcGFyZTMyKHJlZywgaW1t
KTsKKyAgICAgICAgSnVtcCBqdW1wKG1fYXNzZW1ibGVyLmxvYWRCcmFuY2hUYXJnZXQoQVJNUmVn
aXN0ZXJzOjpTMSwgQVJNQ29uZGl0aW9uKGNvbmQpLCB0cnVlKSk7CisgICAgICAgIG1fYXNzZW1i
bGVyLmJ4KEFSTVJlZ2lzdGVyczo6UzEsIEFSTUNvbmRpdGlvbihjb25kKSk7CisgICAgICAgIHJl
dHVybiBQYXRjaGFibGVKdW1wKGp1bXApOworICAgIH0KKwogICAgIHZvaWQgYnJlYWtwb2ludCgp
CiAgICAgewogICAgICAgICBtX2Fzc2VtYmxlci5ia3B0KDApOwpAQCAtODMzLDYgKzgzNywxNSBA
QCBwdWJsaWM6CiAgICAgICAgIG1fYXNzZW1ibGVyLmJ4KGxpbmtSZWdpc3Rlcik7CiAgICAgfQog
CisgICAgdm9pZCBjb21wYXJlMzIoUmVnaXN0ZXJJRCBsZWZ0LCBUcnVzdGVkSW1tMzIgcmlnaHQp
CisgICAgeworICAgICAgICBBUk1Xb3JkIHRtcCA9IChzdGF0aWNfY2FzdDx1bnNpZ25lZD4ocmln
aHQubV92YWx1ZSkgPT0gMHg4MDAwMDAwMCkgPyBBUk1Bc3NlbWJsZXI6OkludmFsaWRJbW1lZGlh
dGUgOiBtX2Fzc2VtYmxlci5nZXRPcDIoLXJpZ2h0Lm1fdmFsdWUpOworICAgICAgICBpZiAodG1w
ICE9IEFSTUFzc2VtYmxlcjo6SW52YWxpZEltbWVkaWF0ZSkKKyAgICAgICAgICAgIG1fYXNzZW1i
bGVyLmNtbihsZWZ0LCB0bXApOworICAgICAgICBlbHNlCisgICAgICAgICAgICBtX2Fzc2VtYmxl
ci5jbXAobGVmdCwgbV9hc3NlbWJsZXIuZ2V0SW1tKHJpZ2h0Lm1fdmFsdWUsIEFSTVJlZ2lzdGVy
czo6UzApKTsKKyAgICB9CisKICAgICB2b2lkIGNvbXBhcmUzMihSZWxhdGlvbmFsQ29uZGl0aW9u
IGNvbmQsIFJlZ2lzdGVySUQgbGVmdCwgUmVnaXN0ZXJJRCByaWdodCwgUmVnaXN0ZXJJRCBkZXN0
KQogICAgIHsKICAgICAgICAgbV9hc3NlbWJsZXIuY21wKGxlZnQsIHJpZ2h0KTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175993</attachid>
            <date>2012-11-26 06:28:53 -0800</date>
            <delta_ts>2012-11-26 06:34:28 -0800</delta_ts>
            <desc>Refactoring compare32 to private.</desc>
            <filename>test-crash-fix.patch</filename>
            <type>text/plain</type>
            <size>3798</size>
            <attacher name="Gabor Ballabas">gaborb</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGJhMjk3OWIuLjUxNmRmODQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTExLTI2ICBHYWJvciBCYWxsYWJh
cyAgPGdhYm9yYkBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAgW1F0XVtBUk1dIFJFR1JFU1NJ
T04ocjEzMDgyNik6IEl0IG1hZGUgMzMgSlNDIHRlc3QgYW5kIDQ2NiBsYXlvdXQgdGVzdHMgY3Jh
c2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4ODU3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVt
ZW50IGEgbmV3IHZlcnNpb24gb2YgcGF0Y2hhYmxlQnJhbmNoMzIgdG8gZml4IGNyYXNoaW5nIEpT
QworICAgICAgICB0ZXN0cy4KKworICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5o
OgorICAgICAgICAoTWFjcm9Bc3NlbWJsZXIpOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fz
c2VtYmxlckFSTS5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlckFSTTo6cGF0Y2hhYmxl
QnJhbmNoMzIpOgorICAgICAgICAoTWFjcm9Bc3NlbWJsZXJBUk0pOgorCiAyMDEyLTExLTIxICBG
aWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAgQW55IGZ1bmN0aW9uIHRo
YXQgY2FuIGxvZyB0aGluZ3Mgc2hvdWxkIGJlIGFibGUgdG8gZWFzaWx5IGxvZyB0aGVtIHRvIGEg
bWVtb3J5IGJ1ZmZlciBhcyB3ZWxsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1i
bGVyL01hY3JvQXNzZW1ibGVyLmgKaW5kZXggNjQyYjVjYS4uZGNmZGQ0OCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIuaApAQCAtMjY2LDEy
ICsyNjYsMTQgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgcmV0dXJuIFBhdGNoYWJsZUp1bXAo
YnJhbmNoVGVzdDMyKGNvbmQsIHJlZywgbWFzaykpOwogICAgIH0KLSAgICAKKyNlbmRpZiAvLyAh
Q1BVKEFSTV9USFVNQjIpCisKKyNpZiAhQ1BVKEFSTSkKICAgICBQYXRjaGFibGVKdW1wIHBhdGNo
YWJsZUJyYW5jaDMyKFJlbGF0aW9uYWxDb25kaXRpb24gY29uZCwgUmVnaXN0ZXJJRCByZWcsIFRy
dXN0ZWRJbW0zMiBpbW0pCiAgICAgewogICAgICAgICByZXR1cm4gUGF0Y2hhYmxlSnVtcChicmFu
Y2gzMihjb25kLCByZWcsIGltbSkpOwogICAgIH0KLSNlbmRpZgorI2VuZGlmIC8vICEoQ1BVKEFS
TSkKIAogICAgIHZvaWQganVtcChMYWJlbCB0YXJnZXQpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTS5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTS5oCmluZGV4IDljNzdl
OTMuLmZkYjE5NDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJBUk0uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L01hY3JvQXNzZW1ibGVyQVJNLmgKQEAgLTU3MCwxMSArNTcwLDcgQEAgcHVibGljOgogCiAgICAg
SnVtcCBicmFuY2gzMihSZWxhdGlvbmFsQ29uZGl0aW9uIGNvbmQsIFJlZ2lzdGVySUQgbGVmdCwg
VHJ1c3RlZEltbTMyIHJpZ2h0LCBpbnQgdXNlQ29uc3RhbnRQb29sID0gMCkKICAgICB7Ci0gICAg
ICAgIEFSTVdvcmQgdG1wID0gKHN0YXRpY19jYXN0PHVuc2lnbmVkPihyaWdodC5tX3ZhbHVlKSA9
PSAweDgwMDAwMDAwKSA/IEFSTUFzc2VtYmxlcjo6SW52YWxpZEltbWVkaWF0ZSA6IG1fYXNzZW1i
bGVyLmdldE9wMigtcmlnaHQubV92YWx1ZSk7Ci0gICAgICAgIGlmICh0bXAgIT0gQVJNQXNzZW1i
bGVyOjpJbnZhbGlkSW1tZWRpYXRlKQotICAgICAgICAgICAgbV9hc3NlbWJsZXIuY21uKGxlZnQs
IHRtcCk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmNtcChsZWZ0LCBt
X2Fzc2VtYmxlci5nZXRJbW0ocmlnaHQubV92YWx1ZSwgQVJNUmVnaXN0ZXJzOjpTMCkpOworICAg
ICAgICBpbnRlcm5hbENvbXBhcmUzMihsZWZ0LCByaWdodCk7CiAgICAgICAgIHJldHVybiBKdW1w
KG1fYXNzZW1ibGVyLmptcChBUk1Db25kaXRpb24oY29uZCksIHVzZUNvbnN0YW50UG9vbCkpOwog
ICAgIH0KIApAQCAtODA3LDYgKzgwMywxNCBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBKdW1w
KG1fYXNzZW1ibGVyLmptcChBUk1Db25kaXRpb24oY29uZCkpKTsKICAgICB9CiAKKyAgICBQYXRj
aGFibGVKdW1wIHBhdGNoYWJsZUJyYW5jaDMyKFJlbGF0aW9uYWxDb25kaXRpb24gY29uZCwgUmVn
aXN0ZXJJRCByZWcsIFRydXN0ZWRJbW0zMiBpbW0pCisgICAgeworICAgICAgICBpbnRlcm5hbENv
bXBhcmUzMihyZWcsIGltbSk7CisgICAgICAgIEp1bXAganVtcChtX2Fzc2VtYmxlci5sb2FkQnJh
bmNoVGFyZ2V0KEFSTVJlZ2lzdGVyczo6UzEsIEFSTUNvbmRpdGlvbihjb25kKSwgdHJ1ZSkpOwor
ICAgICAgICBtX2Fzc2VtYmxlci5ieChBUk1SZWdpc3RlcnM6OlMxLCBBUk1Db25kaXRpb24oY29u
ZCkpOworICAgICAgICByZXR1cm4gUGF0Y2hhYmxlSnVtcChqdW1wKTsKKyAgICB9CisKICAgICB2
b2lkIGJyZWFrcG9pbnQoKQogICAgIHsKICAgICAgICAgbV9hc3NlbWJsZXIuYmtwdCgwKTsKQEAg
LTgzMyw2ICs4MzcsOCBAQCBwdWJsaWM6CiAgICAgICAgIG1fYXNzZW1ibGVyLmJ4KGxpbmtSZWdp
c3Rlcik7CiAgICAgfQogCisKKwogICAgIHZvaWQgY29tcGFyZTMyKFJlbGF0aW9uYWxDb25kaXRp
b24gY29uZCwgUmVnaXN0ZXJJRCBsZWZ0LCBSZWdpc3RlcklEIHJpZ2h0LCBSZWdpc3RlcklEIGRl
c3QpCiAgICAgewogICAgICAgICBtX2Fzc2VtYmxlci5jbXAobGVmdCwgcmlnaHQpOwpAQCAtMTMy
MCw2ICsxMzI2LDE1IEBAIHByaXZhdGU6CiAgICAgZnJpZW5kIGNsYXNzIExpbmtCdWZmZXI7CiAg
ICAgZnJpZW5kIGNsYXNzIFJlcGF0Y2hCdWZmZXI7CiAKKyAgICB2b2lkIGludGVybmFsQ29tcGFy
ZTMyKFJlZ2lzdGVySUQgbGVmdCwgVHJ1c3RlZEltbTMyIHJpZ2h0KQorICAgIHsKKyAgICAgICAg
QVJNV29yZCB0bXAgPSAoc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHJpZ2h0Lm1fdmFsdWUpID09IDB4
ODAwMDAwMDApID8gQVJNQXNzZW1ibGVyOjpJbnZhbGlkSW1tZWRpYXRlIDogbV9hc3NlbWJsZXIu
Z2V0T3AyKC1yaWdodC5tX3ZhbHVlKTsKKyAgICAgICAgaWYgKHRtcCAhPSBBUk1Bc3NlbWJsZXI6
OkludmFsaWRJbW1lZGlhdGUpCisgICAgICAgICAgICBtX2Fzc2VtYmxlci5jbW4obGVmdCwgdG1w
KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgbV9hc3NlbWJsZXIuY21wKGxlZnQsIG1fYXNz
ZW1ibGVyLmdldEltbShyaWdodC5tX3ZhbHVlLCBBUk1SZWdpc3RlcnM6OlMwKSk7CisgICAgfQor
CiAgICAgc3RhdGljIHZvaWQgbGlua0NhbGwodm9pZCogY29kZSwgQ2FsbCBjYWxsLCBGdW5jdGlv
blB0ciBmdW5jdGlvbikKICAgICB7CiAgICAgICAgIEFSTUFzc2VtYmxlcjo6bGlua0NhbGwoY29k
ZSwgY2FsbC5tX2xhYmVsLCBmdW5jdGlvbi52YWx1ZSgpKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175994</attachid>
            <date>2012-11-26 06:34:28 -0800</date>
            <delta_ts>2012-11-26 06:48:31 -0800</delta_ts>
            <desc>Style fix</desc>
            <filename>test-crash-fix.patch</filename>
            <type>text/plain</type>
            <size>3574</size>
            <attacher name="Gabor Ballabas">gaborb</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGJhMjk3OWIuLjUxNmRmODQgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEyLTExLTI2ICBHYWJvciBCYWxsYWJh
cyAgPGdhYm9yYkBpbmYudS1zemVnZWQuaHU+CisKKyAgICAgICAgW1F0XVtBUk1dIFJFR1JFU1NJ
T04ocjEzMDgyNik6IEl0IG1hZGUgMzMgSlNDIHRlc3QgYW5kIDQ2NiBsYXlvdXQgdGVzdHMgY3Jh
c2gKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4ODU3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVt
ZW50IGEgbmV3IHZlcnNpb24gb2YgcGF0Y2hhYmxlQnJhbmNoMzIgdG8gZml4IGNyYXNoaW5nIEpT
QworICAgICAgICB0ZXN0cy4KKworICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5o
OgorICAgICAgICAoTWFjcm9Bc3NlbWJsZXIpOgorICAgICAgICAqIGFzc2VtYmxlci9NYWNyb0Fz
c2VtYmxlckFSTS5oOgorICAgICAgICAoSlNDOjpNYWNyb0Fzc2VtYmxlckFSTTo6cGF0Y2hhYmxl
QnJhbmNoMzIpOgorICAgICAgICAoTWFjcm9Bc3NlbWJsZXJBUk0pOgorCiAyMDEyLTExLTIxICBG
aWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAgQW55IGZ1bmN0aW9uIHRo
YXQgY2FuIGxvZyB0aGluZ3Mgc2hvdWxkIGJlIGFibGUgdG8gZWFzaWx5IGxvZyB0aGVtIHRvIGEg
bWVtb3J5IGJ1ZmZlciBhcyB3ZWxsCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1i
bGVyL01hY3JvQXNzZW1ibGVyLmgKaW5kZXggNjQyYjVjYS4uZGNmZGQ0OCAxMDA2NDQKLS0tIGEv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlci5oCisrKyBiL1Nv
dXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXIuaApAQCAtMjY2LDEy
ICsyNjYsMTQgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgcmV0dXJuIFBhdGNoYWJsZUp1bXAo
YnJhbmNoVGVzdDMyKGNvbmQsIHJlZywgbWFzaykpOwogICAgIH0KLSAgICAKKyNlbmRpZiAvLyAh
Q1BVKEFSTV9USFVNQjIpCisKKyNpZiAhQ1BVKEFSTSkKICAgICBQYXRjaGFibGVKdW1wIHBhdGNo
YWJsZUJyYW5jaDMyKFJlbGF0aW9uYWxDb25kaXRpb24gY29uZCwgUmVnaXN0ZXJJRCByZWcsIFRy
dXN0ZWRJbW0zMiBpbW0pCiAgICAgewogICAgICAgICByZXR1cm4gUGF0Y2hhYmxlSnVtcChicmFu
Y2gzMihjb25kLCByZWcsIGltbSkpOwogICAgIH0KLSNlbmRpZgorI2VuZGlmIC8vICEoQ1BVKEFS
TSkKIAogICAgIHZvaWQganVtcChMYWJlbCB0YXJnZXQpCiAgICAgewpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTS5oIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckFSTS5oCmluZGV4IDljNzdl
OTMuLmU2YjVhZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIv
TWFjcm9Bc3NlbWJsZXJBUk0uaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L01hY3JvQXNzZW1ibGVyQVJNLmgKQEAgLTU3MCwxMSArNTcwLDcgQEAgcHVibGljOgogCiAgICAg
SnVtcCBicmFuY2gzMihSZWxhdGlvbmFsQ29uZGl0aW9uIGNvbmQsIFJlZ2lzdGVySUQgbGVmdCwg
VHJ1c3RlZEltbTMyIHJpZ2h0LCBpbnQgdXNlQ29uc3RhbnRQb29sID0gMCkKICAgICB7Ci0gICAg
ICAgIEFSTVdvcmQgdG1wID0gKHN0YXRpY19jYXN0PHVuc2lnbmVkPihyaWdodC5tX3ZhbHVlKSA9
PSAweDgwMDAwMDAwKSA/IEFSTUFzc2VtYmxlcjo6SW52YWxpZEltbWVkaWF0ZSA6IG1fYXNzZW1i
bGVyLmdldE9wMigtcmlnaHQubV92YWx1ZSk7Ci0gICAgICAgIGlmICh0bXAgIT0gQVJNQXNzZW1i
bGVyOjpJbnZhbGlkSW1tZWRpYXRlKQotICAgICAgICAgICAgbV9hc3NlbWJsZXIuY21uKGxlZnQs
IHRtcCk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIG1fYXNzZW1ibGVyLmNtcChsZWZ0LCBt
X2Fzc2VtYmxlci5nZXRJbW0ocmlnaHQubV92YWx1ZSwgQVJNUmVnaXN0ZXJzOjpTMCkpOworICAg
ICAgICBpbnRlcm5hbENvbXBhcmUzMihsZWZ0LCByaWdodCk7CiAgICAgICAgIHJldHVybiBKdW1w
KG1fYXNzZW1ibGVyLmptcChBUk1Db25kaXRpb24oY29uZCksIHVzZUNvbnN0YW50UG9vbCkpOwog
ICAgIH0KIApAQCAtODA3LDYgKzgwMywxNCBAQCBwdWJsaWM6CiAgICAgICAgIHJldHVybiBKdW1w
KG1fYXNzZW1ibGVyLmptcChBUk1Db25kaXRpb24oY29uZCkpKTsKICAgICB9CiAKKyAgICBQYXRj
aGFibGVKdW1wIHBhdGNoYWJsZUJyYW5jaDMyKFJlbGF0aW9uYWxDb25kaXRpb24gY29uZCwgUmVn
aXN0ZXJJRCByZWcsIFRydXN0ZWRJbW0zMiBpbW0pCisgICAgeworICAgICAgICBpbnRlcm5hbENv
bXBhcmUzMihyZWcsIGltbSk7CisgICAgICAgIEp1bXAganVtcChtX2Fzc2VtYmxlci5sb2FkQnJh
bmNoVGFyZ2V0KEFSTVJlZ2lzdGVyczo6UzEsIEFSTUNvbmRpdGlvbihjb25kKSwgdHJ1ZSkpOwor
ICAgICAgICBtX2Fzc2VtYmxlci5ieChBUk1SZWdpc3RlcnM6OlMxLCBBUk1Db25kaXRpb24oY29u
ZCkpOworICAgICAgICByZXR1cm4gUGF0Y2hhYmxlSnVtcChqdW1wKTsKKyAgICB9CisKICAgICB2
b2lkIGJyZWFrcG9pbnQoKQogICAgIHsKICAgICAgICAgbV9hc3NlbWJsZXIuYmtwdCgwKTsKQEAg
LTEzMjAsNiArMTMyNCwxNSBAQCBwcml2YXRlOgogICAgIGZyaWVuZCBjbGFzcyBMaW5rQnVmZmVy
OwogICAgIGZyaWVuZCBjbGFzcyBSZXBhdGNoQnVmZmVyOwogCisgICAgdm9pZCBpbnRlcm5hbENv
bXBhcmUzMihSZWdpc3RlcklEIGxlZnQsIFRydXN0ZWRJbW0zMiByaWdodCkKKyAgICB7CisgICAg
ICAgIEFSTVdvcmQgdG1wID0gKHN0YXRpY19jYXN0PHVuc2lnbmVkPihyaWdodC5tX3ZhbHVlKSA9
PSAweDgwMDAwMDAwKSA/IEFSTUFzc2VtYmxlcjo6SW52YWxpZEltbWVkaWF0ZSA6IG1fYXNzZW1i
bGVyLmdldE9wMigtcmlnaHQubV92YWx1ZSk7CisgICAgICAgIGlmICh0bXAgIT0gQVJNQXNzZW1i
bGVyOjpJbnZhbGlkSW1tZWRpYXRlKQorICAgICAgICAgICAgbV9hc3NlbWJsZXIuY21uKGxlZnQs
IHRtcCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIG1fYXNzZW1ibGVyLmNtcChsZWZ0LCBt
X2Fzc2VtYmxlci5nZXRJbW0ocmlnaHQubV92YWx1ZSwgQVJNUmVnaXN0ZXJzOjpTMCkpOworICAg
IH0KKwogICAgIHN0YXRpYyB2b2lkIGxpbmtDYWxsKHZvaWQqIGNvZGUsIENhbGwgY2FsbCwgRnVu
Y3Rpb25QdHIgZnVuY3Rpb24pCiAgICAgewogICAgICAgICBBUk1Bc3NlbWJsZXI6OmxpbmtDYWxs
KGNvZGUsIGNhbGwubV9sYWJlbCwgZnVuY3Rpb24udmFsdWUoKSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>