|Summary:||run-webkit-tests should launch DumpRenderTree and the image diff tool in a way compatible with threads.|
|Product:||WebKit||Reporter:||David Levin <levin>|
|Component:||Tools / Tests||Assignee:||David Levin <levin>|
|Severity:||Normal||CC:||aroben, ddkilzer, eric, mrowe|
|Version:||528+ (Nightly build)|
|OS:||OS X 10.5|
|Bug Depends on:|
Description David Levin 2009-04-08 14:22:53 PDT
run-webkit-tests sets up ENV correctly and launches these programs, but on a perl threads use the main thread's environment instead of the current thread.
Comment 2 Eric Seidel (no email) 2009-04-08 14:59:09 PDT
Yeah, this is something ddkilzer or bdash or darin adler would want to review (as our local perl gurus).
Comment 3 David Kilzer (:ddkilzer) 2009-04-08 18:03:59 PDT
Comment on attachment 29346 [details] Proposed fix. Overall this patch looks great, but I have two concerns: 1. The serialization of %ENV using regular expressions is very clever, but I think it would be more straight-forward if Data::Dumper were used to do the serializing, and "eval" to do the deserializing. The Data::Dumper module is present in all "modern" installations of Perl and it would simplify the code in run-webkit-tests and the utility script (ExecAppWithEnv.pm). Try this: $ perl -e 'use Data::Dumper; my $d = Data::Dumper->new([\%ENV], [qw(ENV)]); $d->Indent(0); $d->Purity(1); print $d->Dump();' Also, instead of using "escape" and "unescape", I think it's clearer to use "serialize" and "deserialize" when describing the process of moving %ENV to the subprocess. 2. Please rename "ExecAppWithEnv.pm" to something that resembles a script name like "execAppWithEnv". Naming it "ExecAppWithEnv.pm" made me think it was a Perl module, but it's not. It's a Perl script that is invoked by run-webkit-tests. r- to resolve the above issues. Thanks!
Comment 4 David Levin 2009-04-08 22:20:27 PDT
Created attachment 29358 [details] Proposed fix. Addressed feedback.
Comment 5 David Kilzer (:ddkilzer) 2009-04-09 06:10:18 PDT
Comment on attachment 29358 [details] Proposed fix. r=me Thanks!
Comment 6 David Kilzer (:ddkilzer) 2009-04-09 06:11:25 PDT
Comment on attachment 29358 [details] Proposed fix. >+ * Scripts/execAppWithEnv.pm: Added. Oops! This should just be "Scripts/execAppWithEnv". :)