makedoc: Don't interpret license text as a command
Align makedoc's iscommand() with it's documentation, and don't allow commands to contain a space. A command is a line containing only a sequence of capital letters or '_', followed by optional spaces. This prevents "IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE" (the only line in the license text which consists of only capitals and spaces, without any punctuation) from being interepreted as a makedoc command, leading to: "Can't find IMPLIED" "warning, IMPLIED is not recognised" being emitted by makedoc, (which is normally un-noticed because makedoc's stderr is redirected to a .ref file) 2015-11-06 Jon Turney <jon.turney@dronecode.org.uk> * doc/makedoc.c (iscommand): Only allow commands to have trailing spaces, not space separated words. Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
This commit is contained in:
		| @@ -1,3 +1,8 @@ | ||||
| 2015-11-06  Jon Turney  <jon.turney@dronecode.org.uk> | ||||
|  | ||||
| 	* doc/makedoc.c (iscommand): Only allow commands to have trailing | ||||
| 	spaces, not space separated words. | ||||
|  | ||||
| 2015-11-06  Jon Turney  <jon.turney@dronecode.org.uk> | ||||
|  | ||||
| 	* libm/mathfp/s_acos.c: Fix QUICKREF. | ||||
|   | ||||
| @@ -777,14 +777,18 @@ DEFUN( iscommand,(ptr, idx), | ||||
|       unsigned int idx) | ||||
| { | ||||
|     unsigned int len = 0; | ||||
|     while (at(ptr,idx)) { | ||||
| 	    if (isupper(at(ptr,idx)) || at(ptr,idx) == ' ' || | ||||
| 		at(ptr,idx) == '_')  | ||||
| 	    { | ||||
|  | ||||
|     while (isupper(at(ptr,idx)) || at(ptr,idx) == '_') { | ||||
| 	     len++; | ||||
| 	     idx++; | ||||
| 	 } | ||||
| 	    else if(at(ptr,idx) == '\n') | ||||
|     } | ||||
|  | ||||
|     while (at(ptr,idx) == ' ') { | ||||
| 	     len++; | ||||
| 	     idx++; | ||||
|     } | ||||
|  | ||||
|     if(at(ptr,idx) == '\n') | ||||
| 	    { | ||||
| 		/* The length check will never fail on a real command | ||||
| 		 * because the commands are screened as the definitions file | ||||
| @@ -792,8 +796,7 @@ DEFUN( iscommand,(ptr, idx), | ||||
| 		if (len >= MIN_CMDLEN) return 1; | ||||
| 		return 0; | ||||
| 	    } | ||||
| 	    else return 0; | ||||
| 	} | ||||
|  | ||||
|     return 0; | ||||
|  | ||||
| } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user