]> git.plutz.net Git - busy/blobdiff - Subversion.page
prevent endless loop on malformed svn path
[busy] / Subversion.page
index 6592ddbaaaebde735e40649487519a2f67420ae6..93b55293c63a7f11bb3daa9515eb2243072daefa 100755 (executable)
@@ -2,7 +2,6 @@
 url="$(sed -rn 's:\+: :g;s:%:\\x:g;s:^(.*&)?i=([^&]+)(&.*)?$:\2:p' <<<"${QUERY_STRING}")"
 url="$(echo -e "${url}" |sed -rn '1{s:\t: :g;s:\r::g;s:\\:\\\\:g;p}')"
 rev="$(sed -rn 's:\+: :g;s:%:\\x:g;s:^(.*&)?r=([0-9]+)(&.*)?$:\2:p' <<<"${QUERY_STRING}")"
-#rev="$(sed -rn '/^(.*&)?r=([0-9]+)(&.*)?$/{s:^(.*&)?r=([0-9]+)(&.*)?$:\2:;s:\+: :g;s:%:\\x:g;p}' <<<"${QUERY_STRING}")"
 
 baseuri=$(sed -rn 's:^svnRepo=(.*)$:\1:p' project.meta)
 lastrev=$(svn info "$baseuri" |sed -rn 's;^Revision: *([0-9]+);\1;p')
@@ -12,12 +11,12 @@ cat <<SVNEND
   <div id="LEFT">
     <h1>Path:</h1>
     <a href='?p=Subversion&amp;i=/&amp;r=$rev'>[root]</a> 
-    $(tmp=$url
-    until [ -z "$tmp" -o "$tmp" = // ]; do
+    $(tmp="$url"
+    until [ -z "$tmp" -o "$tmp" = '//' -o "$tmp" = './' ]; do
       echo "<a href='?p=Subversion&amp;i=$tmp&amp;r=$rev'>/$(basename "$tmp")</a> "
-      tmp=$(dirname "$tmp")/
+      tmp="$(dirname "$tmp")/"
     done |tac)
-    <hr><!----------------------------------------------->
+    <hr>
     <h1>Revisions:</h1>
     $(for i in {1.."$lastrev"}; do
       echo "<a href='?p=Subversion&amp;i=$url&amp;r=$i'>$i</a>"