2012-06-12 3 views
2

오류가 발생하지 않고 012x이라는 요소에 대해 <<element/>이라는 이름의 rapidxml 구문을 발견했습니다.아마도 rapidxml의 버그 일 수 있습니다. 그러나 수정 방법을 모르겠습니다.

문제는 lookup_node_name의 정의라고 생각합니다. 이 의견은 내가이 w3.org specification에서 이해하는 것은 이름은 문자, 숫자, 몇 가지 다른 문자를 가질 수 있다는 것입니다

// Node name (anything but space \n \r \t/> ? \0) 

입니다.

올바른 수정 사항이 무엇이 될지 잘 모르겠습니다. 어떤 제안?

+1

코드를 게시하지 않고는 아무 것도 할 수 없습니다. – jxh

답변

1

rapidxml 코드를 보면 lookup_node_name은 유효한 이름 문자의 조회 표이며 주석에 나와있는 것처럼 특정 소수만 금지됩니다.

나는 ASCII 문자 0x3C에 대한 조회 항목을 0에서 1로 설정하여 금지 된 문자 목록에 '<'을 추가하려고합니다. 즉, chars 0x30..0x3f와 관련된 행에서 다음과 같이 변경하십시오. .이에

 // 0 1 2 3 4 5 6 7 8 9 A B C D E F 
... 
     1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, // 3 

: 당신을 위해 작동 할 수 있지만 나는 그것을 시도하지 않은

  1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, // 3 

. sourceforge를 통해 개발자에게 연락을 시도한 것 같습니다. 아마도 가장 좋은 접근 방법 일 것입니다 ...

+0

이 특정 입력에 대해서는 true로 작동하지만 개발자의 응답은 여전히 ​​좋아합니다. 특히 수정본을 제출하려는 경우에 특히 그렇습니다. – ModdyFire

관련 문제