]> git.saurik.com Git - cycript.git/blobdiff - Filter.sh
Move the EOF "final newline" to the ctrl-d check.
[cycript.git] / Filter.sh
index 00dc10c89e4bf99a877fc3ce06bf5374a8892cc3..398cc04b4745e49ed926f6be17e42bfc1b76e397 100755 (executable)
--- a/Filter.sh
+++ b/Filter.sh
@@ -1,9 +1,35 @@
-#!/bin/bash
+#!/usr/bin/env bash
+
+# Cycript - Optimizing JavaScript Compiler/Runtime
+# Copyright (C) 2009-2013  Jay Freeman (saurik)
+
+# GNU General Public License, Version 3 {{{
+#
+# Cycript is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published
+# by the Free Software Foundation, either version 3 of the License,
+# or (at your option) any later version.
+#
+# Cycript is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with Cycript.  If not, see <http://www.gnu.org/licenses/>.
+# }}}
 
 filters=("$@")
 
 while IFS= read -r line; do
 
 filters=("$@")
 
 while IFS= read -r line; do
-    if [[ ${line} = @begin* ]]; then
+    if [[ ${line} = @if* ]]; then
+        line=${line#@if }
+        for name in "${filters[@]}"; do
+            if [[ ${line} = ${name}' '* ]]; then
+                echo "${line#${name} }"
+            fi
+        done
+    elif [[ ${line} = @begin* ]]; then
         set ${line}; shift
         filter=
         for name in "${filters[@]}"; do
         set ${line}; shift
         filter=
         for name in "${filters[@]}"; do