SF.net SVN: geany: [1781] trunk

eht16 at users.sourceforge.net eht16 at xxxxx
Thu Aug 9 22:29:31 UTC 2007


Revision: 1781
          http://geany.svn.sourceforge.net/geany/?rev=1781&view=rev
Author:   eht16
Date:     2007-08-09 15:29:31 -0700 (Thu, 09 Aug 2007)

Log Message:
-----------
Fix parsing classes with modifiers like 'final'.

Modified Paths:
--------------
    trunk/ChangeLog
    trunk/tagmanager/php.c

Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2007-08-09 16:18:02 UTC (rev 1780)
+++ trunk/ChangeLog	2007-08-09 22:29:31 UTC (rev 1781)
@@ -1,3 +1,8 @@
+2007-08-10  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>
+
+ * tagmanager/php.c: Fix parsing classes with modifiers like 'final'.
+
+
 2007-08-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>
 
  * plugins/classbuilder.c:

Modified: trunk/tagmanager/php.c
===================================================================
--- trunk/tagmanager/php.c	2007-08-09 16:18:02 UTC (rev 1780)
+++ trunk/tagmanager/php.c	2007-08-09 22:29:31 UTC (rev 1781)
@@ -114,10 +114,11 @@
 			makeSimpleTag (name, PhpKinds, K_FUNCTION);
 			vStringClear (name);
 		}
-		else if (strncmp ((const char*) cp, "class", (size_t) 5) == 0 &&
-				 isspace ((int) cp [5]))
+		else if ((f = strstr ((const char*) cp, "class")) != NULL &&
+			(f == (const char*) cp || isspace ((int) f [-1])) &&
+			isspace ((int) f [5]))
 		{
-			cp += 5;
+			cp = ((const unsigned char *) f) + 5;
 
 			while (isspace ((int) *cp))
 				++cp;


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.



More information about the Commits mailing list