blob: 7c3540a05bae66928225ea9b2c3eb8a4decbb458 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
diff -ur src/ne_uri.c
--- src/ne_uri.c 2020-02-07 10:49:58.764417840 +0000
+++ src/ne_uri.c 2020-02-07 10:51:33.675627141 +0000
@@ -87,7 +87,9 @@
/* pchar = unreserved / pct-encoded / sub-delims / ":" / "@" */
#define URI_PCHAR (URI_UNRESERVED | PC | URI_SUBDELIM | CL | AT)
/* invented: segchar = pchar / "/" */
-#define URI_SEGCHAR (URI_PCHAR | FS)
+/* allow OT characters to parse SharePoint 2016 href IRIs (breaking the spec
+ * of href XML Element: "MUST contain a URI or a relative reference." */
+#define URI_SEGCHAR (URI_PCHAR | FS | OT)
/* query = *( pchar / "/" / "?" ) */
#define URI_QUERY (URI_PCHAR | FS | QU)
/* fragment == query */
@@ -237,7 +238,7 @@
p = s;
- while (uri_lookup(*p) & URI_SEGCHAR)
+ while (uri_lookup(*p) & URI_SEGCHAR && *p != '\0')
p++;
/* => p = [ "?" query ] [ "#" fragment ] */
|