Browse Source

* reinserted old regexpr with fix so testreg1 executes correctly

peter 25 năm trước cách đây
mục cha
commit
dcaf96db1d

+ 13 - 6
packages/regexpr/regexpr.pp

@@ -78,6 +78,9 @@ unit regexpr;
 
 
   implementation
   implementation
 
 
+     uses
+        strings;
+
 {$ifdef DEBUG}
 {$ifdef DEBUG}
      procedure writecharset(c : tcharset);
      procedure writecharset(c : tcharset);
 
 
@@ -310,8 +313,8 @@ unit regexpr;
                           new(hp);
                           new(hp);
                           doregister(hp);
                           doregister(hp);
                           hp^.typ:=ret_backtrace;
                           hp^.typ:=ret_backtrace;
-                          // hp^.elsepath:=parseregexpr(elsepath);
-                          hp^.next:=@parseregexpr;
+                          hp^.elsepath:=parseregexpr(nil,elsepath);
+                          hp^.next:=parseregexpr;
                           parseregexpr:=hp;
                           parseregexpr:=hp;
                           exit;
                           exit;
                        end;
                        end;
@@ -424,6 +427,7 @@ unit regexpr;
           endp : pregexprentry;
           endp : pregexprentry;
 
 
        begin
        begin
+          error:=false;
           GenerateRegExprEngine.Data:=nil;
           GenerateRegExprEngine.Data:=nil;
           GenerateRegExprEngine.DestroyList:=nil;
           GenerateRegExprEngine.DestroyList:=nil;
           if regexpr=nil then
           if regexpr=nil then
@@ -439,7 +443,7 @@ unit regexpr;
           GenerateRegExprEngine.Data:=parseregexpr(nil,endp);
           GenerateRegExprEngine.Data:=parseregexpr(nil,endp);
           GenerateRegExprEngine.DestroyList:=first;
           GenerateRegExprEngine.DestroyList:=first;
           if error or (currentpos^<>#0) then
           if error or (currentpos^<>#0) then
-            DestroyRegExprEngine(Result);
+            DestroyRegExprEngine(GenerateRegExprEngine);
        end;
        end;
 
 
     procedure DestroyRegExprEngine(var regexpr : TRegExprEngine);
     procedure DestroyRegExprEngine(var regexpr : TRegExprEngine);
@@ -470,9 +474,9 @@ unit regexpr;
             dosearch:=false;
             dosearch:=false;
             while true do
             while true do
               begin
               begin
-	         {$IFDEF Debug}
+{$ifdef DEBUG}
                  writeln(byte(regexpr^.typ));
                  writeln(byte(regexpr^.typ));
-		 {$ENDIF Debug}
+{$endif}
                  case regexpr^.typ of
                  case regexpr^.typ of
                     ret_endline:
                     ret_endline:
                       begin
                       begin
@@ -590,7 +594,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.1.2.2  2000-07-30 14:48:44  sg
+  Revision 1.1.2.3  2000-07-30 16:51:52  peter
+    * reinserted old regexpr with fix so testreg1 executes correctly
+
+  Revision 1.1.2.2  2000/07/30 14:48:44  sg
   * fixed small typo...
   * fixed small typo...
 
 
   Revision 1.1.2.1  2000/07/30 14:42:40  sg
   Revision 1.1.2.1  2000/07/30 14:42:40  sg

+ 8 - 4
packages/regexpr/testreg1.pp

@@ -137,8 +137,12 @@ begin
    DestroyregExprEngine(r);
    DestroyregExprEngine(r);
    }
    }
    writeln('*** Testing unit regexpr was successful ***');
    writeln('*** Testing unit regexpr was successful ***');
-end.  $Log$
-end.  Revision 1.2  2000-07-13 11:33:31  michael
-end.  + removed logs
-end. 
+end.
+{
+  $Log$
+  Revision 1.1.2.1  2000-07-30 16:51:52  peter
+    * reinserted old regexpr with fix so testreg1 executes correctly
+
+  Revision 1.2  2000/07/13 11:33:31  michael
+  + removed logs
 }
 }