<?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>31164</bug_id>
          
          <creation_ts>2009-11-05 05:02:23 -0800</creation_ts>
          <short_desc>[Qt] [DRT] Fix wrong logic in LayoutTestController processWork</short_desc>
          <delta_ts>2009-11-08 19:13:04 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>30573</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Antonio Gomes">tonikitoo</reporter>
          <assigned_to name="Antonio Gomes">tonikitoo</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>160793</commentid>
    <comment_count>0</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2009-11-05 05:02:23 -0800</bug_when>
    <thetext>Qt&apos;s DRT logic for processing the WorkQueue is working differently from other DRT ports (e.g. mac, gtk and win):

void LayoutTestController::processWork()
  (..)
  if (!WorkQueue::shared()-&gt;processWork() &amp;&amp; !shouldWaitUntilDone()) {
     emit done();


notice the first &quot;!&quot;. It makes queue processing stop when if should proceed (&apos;true&apos; here means that queue is done and we are ok to finish).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>160794</commentid>
    <comment_count>1</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2009-11-05 05:03:01 -0800</bug_when>
    <thetext>for reference:

GTK:
static gboolean processWork(void* data)
{
  // if we finish all the commands, we&apos;re ready to dump state
  if (WorkQueue::shared()-&gt;processWork() &amp;&amp; !gLayoutTestController-&gt;waitToDump())
     dump();

WIN:
void FrameLoadDelegate::processWork()
{
  (...)
  // if we finish all the commands, we&apos;re ready to dump state
  if (WorkQueue::shared()-&gt;processWork() &amp;&amp; !::gLayoutTestController-&gt;waitToDump())
    dump();

MAC:
- (void)processWork:(id)dummy
{
  (...)
  // if we finish all the commands, we&apos;re ready to dump state
  if (WorkQueue::shared()-&gt;processWork() &amp;&amp; !gLayoutTestController-&gt;waitToDump())
    dump();</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>160795</commentid>
    <comment_count>2</comment_count>
      <attachid>42560</attachid>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2009-11-05 05:09:53 -0800</bug_when>
    <thetext>Created attachment 42560
(committed in r50622) patch

patch make LayoutTestController::proccessWork to dump whole if WorkQueue returns &apos;true&apos;

it makes qt compliant to other drt&apos;s (mac, win, gtk)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>161318</commentid>
    <comment_count>3</comment_count>
      <attachid>42560</attachid>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2009-11-07 00:32:56 -0800</bug_when>
    <thetext>Comment on attachment 42560
(committed in r50622) patch

Seems plausible.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>161416</commentid>
    <comment_count>4</comment_count>
    <who name="Antonio Gomes">tonikitoo</who>
    <bug_when>2009-11-08 09:27:46 -0800</bug_when>
    <thetext>r50622</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>42560</attachid>
            <date>2009-11-05 05:09:53 -0800</date>
            <delta_ts>2009-11-08 09:28:56 -0800</delta_ts>
            <desc>(committed in r50622) patch</desc>
            <filename>0001--Qt-DRT-Fix-wrong-logic-in-LayoutTestController-p.patch</filename>
            <type>text/plain</type>
            <size>2159</size>
            <attacher name="Antonio Gomes">tonikitoo</attacher>
            
              <data encoding="base64">RnJvbSA5ODZmOTBmNTU1MjE2ZTUxMDNhZThkOTFhZjE0Nzc0ZmJjMzEyNDdmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRvbmlvIEdvbWVzIDx0b25pa2l0b29Ad2Via2l0Lm9yZz4K
RGF0ZTogVGh1LCA1IE5vdiAyMDA5IDA5OjA1OjIwIC0wNDAwClN1YmplY3Q6IFtQQVRDSF0gW1F0
XSBbRFJUXSBGaXggd3JvbmcgbG9naWMgaW4gTGF5b3V0VGVzdENvbnRyb2xsZXIgcHJvY2Vzc1dv
cmsKIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMTE2NAoKUGF0Y2gg
YnkgQW50b25pbyBHb21lcyA8dG9uaWtpdG9vQHdlYmtpdC5vcmc+IG9uIDIwMDktMTEtMDUKUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgpGaXhlZCB3cm9uZyBsb2dpYyB0byBhc3N1bWUgV29y
a1F1ZXVlIGlzIGRvbmUgaW4gUVQncyBEUlQuCgoqIER1bXBSZW5kZXJUcmVlL3F0L0xheW91dFRl
c3RDb250cm9sbGVyUXQuY3BwOgooTGF5b3V0VGVzdENvbnRyb2xsZXI6OnByb2Nlc3NXb3JrKToK
LS0tCiBXZWJLaXRUb29scy9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgMTIgKysrKysrKysrKysrCiAuLi4vRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0VGVzdENvbnRy
b2xsZXJRdC5jcHAgICB8ICAgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygr
KSwgMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9DaGFuZ2VMb2cgYi9X
ZWJLaXRUb29scy9DaGFuZ2VMb2cKaW5kZXggOGFmYWQ0Yy4uNmVlYTc0OCAxMDA2NDQKLS0tIGEv
V2ViS2l0VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1dlYktpdFRvb2xzL0NoYW5nZUxvZwpAQCAtMiw2
ICsyLDE4IEBACiAKICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCiAKKyAgICAg
ICAgW1F0XSBbRFJUXSBGaXggd3JvbmcgbG9naWMgaW4gTGF5b3V0VGVzdENvbnRyb2xsZXIgcHJv
Y2Vzc1dvcmsKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTMxMTY0CisKKyAgICAgICAgRml4ZWQgd3JvbmcgbG9naWMgdG8gYXNzdW1lIFdvcmtRdWV1ZSBp
cyBkb25lIGluIFFUJ3MgRFJULgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvcXQvTGF5b3V0
VGVzdENvbnRyb2xsZXJRdC5jcHA6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcjo6cHJv
Y2Vzc1dvcmspOgorCisyMDA5LTExLTA1ICBBbnRvbmlvIEdvbWVzICA8dG9uaWtpdG9vQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKICAgICAgICAg
W1F0XVtEUlRdIFJlcGxhY2UgcXVldWVTY3JpcHQgYnkgcXVldWVOb25Mb2FkaW5nU2NyaXB0IGFu
ZCBxdWV1ZUxvYWRpbmdTY3JpcHQgbWV0aG9kCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0zMTE1OAogCmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9xdC9MYXlvdXRUZXN0Q29udHJvbGxlclF0LmNwcCBiL1dlYktpdFRvb2xzL0R1
bXBSZW5kZXJUcmVlL3F0L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwCmluZGV4IDAwYTYwODEu
LjgzMTFkOTEgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0L0xheW91
dFRlc3RDb250cm9sbGVyUXQuY3BwCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL3F0
L0xheW91dFRlc3RDb250cm9sbGVyUXQuY3BwCkBAIC03Myw3ICs3Myw3IEBAIHZvaWQgTGF5b3V0
VGVzdENvbnRyb2xsZXI6OnByb2Nlc3NXb3JrKCkKICAgICAvLyBxRGVidWcoKSA8PCAiPj4+cHJv
Y2Vzc1dvcmsiOwogCiAgICAgLy8gaWYgd2UgZGlkbid0IHN0YXJ0IGEgbmV3IGxvYWQsIHRoZW4g
d2UgZmluaXNoZWQgYWxsIHRoZSBjb21tYW5kcywgc28gd2UncmUgcmVhZHkgdG8gZHVtcCBzdGF0
ZQotICAgIGlmICghV29ya1F1ZXVlOjpzaGFyZWQoKS0+cHJvY2Vzc1dvcmsoKSAmJiAhc2hvdWxk
V2FpdFVudGlsRG9uZSgpKSB7CisgICAgaWYgKFdvcmtRdWV1ZTo6c2hhcmVkKCktPnByb2Nlc3NX
b3JrKCkgJiYgIXNob3VsZFdhaXRVbnRpbERvbmUoKSkgewogICAgICAgICBlbWl0IGRvbmUoKTsK
ICAgICAgICAgbV9pc0xvYWRpbmcgPSBmYWxzZTsKICAgICB9Ci0tIAoxLjYuMC40Cgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>