summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorMichael Drake <michael.drake@codethink.co.uk>2018-08-09 15:34:38 +0100
committerMichael Drake <michael.drake@codethink.co.uk>2018-08-09 16:19:42 +0100
commitbc280f0e3fb4fbbea868fb4b17f1ea71ecd90ead (patch)
tree127f7764414b2d1d878cc9c8d4668a0fca6e4cb8 /utils
parentca0514ea9218d3b419071056d954bbff9f18a1ac (diff)
downloadnetsurf-bc280f0e3fb4fbbea868fb4b17f1ea71ecd90ead.tar.gz
netsurf-bc280f0e3fb4fbbea868fb4b17f1ea71ecd90ead.tar.bz2
nsurl: Add data to scheme type enum.
Diffstat (limited to 'utils')
-rw-r--r--utils/nsurl/parse.c10
-rw-r--r--utils/nsurl/private.h3
2 files changed, 12 insertions, 1 deletions
diff --git a/utils/nsurl/parse.c b/utils/nsurl/parse.c
index ce6f4435d..ff5f27bc3 100644
--- a/utils/nsurl/parse.c
+++ b/utils/nsurl/parse.c
@@ -302,6 +302,16 @@ static void nsurl__get_string_markers(const char * const url_s,
((*(pos - off + 5) == 'o') ||
(*(pos - off + 5) == 'O')))) {
marker.scheme_type = NSURL_SCHEME_MAILTO;
+ } else if (off == SLEN("data") &&
+ (((*(pos - off + 0) == 'd') ||
+ (*(pos - off + 0) == 'D')) &&
+ ((*(pos - off + 1) == 'a') ||
+ (*(pos - off + 1) == 'A')) &&
+ ((*(pos - off + 2) == 't') ||
+ (*(pos - off + 2) == 'T')) &&
+ ((*(pos - off + 3) == 'a') ||
+ (*(pos - off + 3) == 'A')))) {
+ marker.scheme_type = NSURL_SCHEME_DATA;
}
/* Skip over colon */
diff --git a/utils/nsurl/private.h b/utils/nsurl/private.h
index bc6737cd6..8032be0c2 100644
--- a/utils/nsurl/private.h
+++ b/utils/nsurl/private.h
@@ -36,7 +36,8 @@ enum nsurl_scheme_type {
NSURL_SCHEME_HTTPS,
NSURL_SCHEME_FILE,
NSURL_SCHEME_FTP,
- NSURL_SCHEME_MAILTO
+ NSURL_SCHEME_MAILTO,
+ NSURL_SCHEME_DATA
};