From d0e3b793d5fb8c982c956291fb6c77b50324d052 Mon Sep 17 00:00:00 2001
From: Martin Nilsson <mani@lysator.liu.se>
Date: Mon, 10 Feb 2003 21:56:57 +0100
Subject: [PATCH] Set the internal filename variable.

Rev: lib/modules/Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod:1.31
Rev: lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike:1.34
---
 .../Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod       |  2 +-
 lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike  | 12 +++++++-----
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/lib/modules/Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod b/lib/modules/Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod
index ad688903ee..cd24e86836 100644
--- a/lib/modules/Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod
+++ b/lib/modules/Tools.pmod/AutoDoc.pmod/PikeExtractor.pmod
@@ -22,7 +22,7 @@ static private class Extractor {
   static private .PikeParser parser;
 
   static void create(string s, string filename) {
-    parser = .PikeParser();
+    parser = .PikeParser(0, filename);
 
     array(string) tokens;
     array(int) positions;
diff --git a/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike b/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike
index 20f7c0f68d..930acc89b0 100644
--- a/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike
+++ b/lib/modules/Tools.pmod/AutoDoc.pmod/PikeParser.pike
@@ -718,21 +718,23 @@ void setTokens(array(string) t, array(int) p) {
 // create(string, filename, firstline)
 // create(array(Token))
 static void create(string|void s,
-                   string|SourcePosition|void filename,
+                   string|SourcePosition|void _filename,
                    int|void line)
 {
   if (s) {
-    if (objectp(filename)) {
-      line = filename->firstline;
-      filename = filename->filename;
+    if (objectp(_filename)) {
+      line = _filename->firstline;
+      filename = _filename->filename;
     }
     if (!line)
       error("PikeParser::create() called without line arg.\n");
 
     [tokens, positions] = tokenize(s, filename, line);
   }
-  else
+  else {
     tokens = ({});
+    filename = _filename;
+  }
 #if TOKEN_DEBUG
   werror("PikeParser::create(), tokens = \n%O\n", tokens);
 #endif
-- 
GitLab