Prechádzať zdrojové kódy

Fixed string_substr primitive

Yentl Van Tendeloo 8 rokov pred
rodič
commit
aed0d19f50
2 zmenil súbory, kde vykonal 5 pridanie a 5 odobranie
  1. 3 1
      bootstrap/primitives.alc
  2. 2 4
      scripts/compile.py

+ 3 - 1
bootstrap/primitives.alc

@@ -149,11 +149,13 @@ String function string_substr(a: String, b: Integer, c: Integer):
 	i = 0
 	result = ""
 	while (i < string_len(a)):
-		if (bool_and(i > b, i < c)):
+		if (bool_and(i >= b, i < c)):
 			result = result + string_get(a, i)
 
 		if (i > c):
 			return result!
+
+		i = i + 1
 	return result!
 	
 Element function resolve(name : String):

+ 2 - 4
scripts/compile.py

@@ -11,11 +11,9 @@ def do_compile(address, filename, username, modulename, mode, optionals=[], gram
     except urllib2.URLError:
         return 2
     except:
-        urllib2.urlopen(urllib2.Request(address, 'op=set_input&username=user_manager&value="__delete"')).read()
-        urllib2.urlopen(urllib2.Request(address, 'op=set_input&username=user_manager&value="%s"' % username)).read()
+        urllib2.urlopen(urllib2.Request(address, 'op=set_input&username=user_manager&value="__%s"' % username)).read()
         return 1
-    urllib2.urlopen(urllib2.Request(address, 'op=set_input&username=user_manager&value="__delete"')).read()
-    urllib2.urlopen(urllib2.Request(address, 'op=set_input&username=user_manager&value="%s"' % username)).read()
+    urllib2.urlopen(urllib2.Request(address, 'op=set_input&username=user_manager&value="__%s"' % username)).read()
     return 0
 
 if __name__ == "__main__":