<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[234144] trunk/Tools</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/234144">234144</a></dd>
<dt>Author</dt> <dd>cturner@igalia.com</dd>
<dt>Date</dt> <dd>2018-07-24 07:40:47 -0700 (Tue, 24 Jul 2018)</dd>
</dl>

<h3>Log Message</h3>
<pre>[Flatpak] Avoid consuming unknown arguments in flatpak wrapper
https://bugs.webkit.org/show_bug.cgi?id=187951

When running run-webkit-tests --wpe --debug, it was observed that
both self.platform != 'wpe' and self.debug != True. This turned
out to be because of the "args" argument consuming the remainder
of future arguments that came after it. Since the first argument
to load_from_args was the test script to run, it would end up
never processing the other arguments supplied to the wrapper
script.

Tested this by rebuilding GTK in debug mode, running the
minibrowser with various extra options, and running some tests
with various extra options.

Reviewed by Michael Catanzaro.

* flatpak/flatpakutils.py:
(WebkitFlatpak.load_from_args):</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkToolsChangeLog">trunk/Tools/ChangeLog</a></li>
<li><a href="#trunkToolsflatpakflatpakutilspy">trunk/Tools/flatpak/flatpakutils.py</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkToolsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Tools/ChangeLog (234143 => 234144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/ChangeLog    2018-07-24 13:22:03 UTC (rev 234143)
+++ trunk/Tools/ChangeLog       2018-07-24 14:40:47 UTC (rev 234144)
</span><span class="lines">@@ -1,3 +1,25 @@
</span><ins>+2018-07-24  Charlie Turner  <cturner@igalia.com>
+
+        [Flatpak] Avoid consuming unknown arguments in flatpak wrapper
+        https://bugs.webkit.org/show_bug.cgi?id=187951
+
+        When running run-webkit-tests --wpe --debug, it was observed that
+        both self.platform != 'wpe' and self.debug != True. This turned
+        out to be because of the "args" argument consuming the remainder
+        of future arguments that came after it. Since the first argument
+        to load_from_args was the test script to run, it would end up
+        never processing the other arguments supplied to the wrapper
+        script.
+
+        Tested this by rebuilding GTK in debug mode, running the
+        minibrowser with various extra options, and running some tests
+        with various extra options.
+
+        Reviewed by Michael Catanzaro.
+
+        * flatpak/flatpakutils.py:
+        (WebkitFlatpak.load_from_args):
+
</ins><span class="cx"> 2018-07-24  Thibault Saunier  <tsaunier@igalia.com>
</span><span class="cx"> 
</span><span class="cx">         [Flatpak] Remove now unnecessary 'hacks' for running tests
</span></span></pre></div>
<a id="trunkToolsflatpakflatpakutilspy"></a>
<div class="modfile"><h4>Modified: trunk/Tools/flatpak/flatpakutils.py (234143 => 234144)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Tools/flatpak/flatpakutils.py      2018-07-24 13:22:03 UTC (rev 234143)
+++ trunk/Tools/flatpak/flatpakutils.py 2018-07-24 14:40:47 UTC (rev 234144)
</span><span class="lines">@@ -504,9 +504,6 @@
</span><span class="cx">         general.add_argument("-y", "--assumeyes",
</span><span class="cx">                             help="Automatically answer yes for all questions.",
</span><span class="cx">                             action="store_true")
</span><del>-        general.add_argument("args",
-                            nargs=argparse.REMAINDER,
-                            help="Arguments passed when starting %s" % self.name)
</del><span class="cx">         general.add_argument('--avalaible', action='store_true', dest="check_avalaible", help='Check if required dependencies are avalaible.'),
</span><span class="cx"> 
</span><span class="cx">         debugoptions = parser.add_argument_group("Debugging")
</span><span class="lines">@@ -521,7 +518,7 @@
</span><span class="cx">         general.add_argument("--clean", dest="clean", action="store_true",
</span><span class="cx">             help="Clean previous builds and restart from scratch")
</span><span class="cx"> 
</span><del>-        parser.parse_args(args=args, namespace=self)
</del><ins>+        _, self.args = parser.parse_known_args(args=args, namespace=self)
</ins><span class="cx"> 
</span><span class="cx">         return self
</span><span class="cx"> 
</span></span></pre>
</div>
</div>

</body>
</html>