r5867 - trunk/misc/tools
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Fri Feb 13 12:51:26 EST 2009
Author: div0
Date: 2009-02-13 12:51:26 -0500 (Fri, 13 Feb 2009)
New Revision: 5867
Modified:
trunk/misc/tools/shader-checksums.pl
Log:
allow more glitchy shader files (matches DP)
Modified: trunk/misc/tools/shader-checksums.pl
===================================================================
--- trunk/misc/tools/shader-checksums.pl 2009-02-13 17:29:31 UTC (rev 5866)
+++ trunk/misc/tools/shader-checksums.pl 2009-02-13 17:51:26 UTC (rev 5867)
@@ -31,10 +31,24 @@
next if /^$/;
my @line = map { s/"//g; $_; } split /\s+/, $_;
+ my @nextline = ();
+nextline:
+ # allow trailing } token
+ my $brace_index = [grep { $line[$_] eq "}" } 0.. at line-1]->[0];
+ if(defined $brace_index)
+ {
+ @nextline = splice @line, $brace_index || 1;
+ }
+
+ # allow initial { token
+ if(@line >= 2 && $line[0] eq '{')
+ {
+ @nextline = splice @line, 1;
+ }
+
$shadertext .= "@line\n";
-again:
if($line[0] eq '{')
{
die "{ line without shader name"
@@ -42,11 +56,6 @@
die "{ line in level $level"
if $level >= 2;
++$level;
- if(@line > 1)
- {
- shift @line;
- goto again;
- }
}
elsif($line[0] eq '}')
{
@@ -108,6 +117,13 @@
$curshader = normalize_path $line[0];
$shadertext = "";
}
+
+ if(@nextline)
+ {
+ @line = @nextline;
+ @nextline = ();
+ goto nextline;
+ }
}
if($level != 0)
More information about the nexuiz-commits
mailing list