浏览代码

cmXml.c : XML declaration nodes of the form: <?label ... ?> which do not have conventional attribute lists are now handled.

master
kevin 3 年前
父节点
当前提交
0243857bfe
共有 1 个文件被更改,包括 13 次插入0 次删除
  1. 13
    0
      cmXml.c

+ 13
- 0
cmXml.c 查看文件

312
 
312
 
313
   // advance past the next '='
313
   // advance past the next '='
314
   if( _cmXmlAdvancePast(p,"=") == NULL )
314
   if( _cmXmlAdvancePast(p,"=") == NULL )
315
+  {
316
+    if( endChar=='?')
317
+    {
318
+      if((v1 = _cmXmlAdvanceToNext(p,"?")) != NULL )
319
+      {
320
+        v0 = l1+1;
321
+        goto allocLabel;
322
+      }
323
+      
324
+    }
325
+    
315
     return _cmXmlSyntaxError(p);
326
     return _cmXmlSyntaxError(p);
327
+  }
316
   
328
   
317
   // advance to the next non-white character
329
   // advance to the next non-white character
318
   if((v0 = _cmXmlAdvanceToNextNonWhite(p)) == NULL )
330
   if((v0 = _cmXmlAdvanceToNextNonWhite(p)) == NULL )
341
     if( _cmXmlAdvanceOne(p) == NULL )
353
     if( _cmXmlAdvanceOne(p) == NULL )
342
       return _cmXmlSyntaxError(p);
354
       return _cmXmlSyntaxError(p);
343
 
355
 
356
+ allocLabel:
344
   _cmXmlAttrAlloc(p, np, l0, l1-l0, v0, v1-v0 );
357
   _cmXmlAttrAlloc(p, np, l0, l1-l0, v0, v1-v0 );
345
   
358
   
346
 
359
 

正在加载...
取消
保存