diff options
author | Allen Winter <allen.winter@kdab.com> | 2022-10-01 10:02:50 -0400 |
---|---|---|
committer | Allen Winter <allen.winter@kdab.com> | 2022-10-01 10:02:50 -0400 |
commit | 77a72109c520fff5ee3d3b1605e0a01ab6145ab3 (patch) | |
tree | 811490220afdbaaee2433277ac8d054d024906d1 /src | |
parent | d8ef53ca39e6614b80ae6fe326c54efa4b5a403c (diff) | |
parent | ca3e2ad983771b90da259994b7a6d7de1fd1abdc (diff) | |
download | libical-git-77a72109c520fff5ee3d3b1605e0a01ab6145ab3.tar.gz |
Merge branch '3.0'
Diffstat (limited to 'src')
-rw-r--r-- | src/libical/icalparser.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libical/icalparser.c b/src/libical/icalparser.c index 295dced9..ea192c38 100644 --- a/src/libical/icalparser.c +++ b/src/libical/icalparser.c @@ -627,6 +627,7 @@ icalcomponent *icalparser_parse(icalparser *parser, icalparser_line_gen_func line_gen_func) { char *line; + unsigned int cnt = 0; icalcomponent *c = 0; icalcomponent *root = 0; icalerrorstate es = icalerror_get_error_state(ICAL_MALFORMEDDATA_ERROR); @@ -637,6 +638,7 @@ icalcomponent *icalparser_parse(icalparser *parser, icalerror_set_error_state(ICAL_MALFORMEDDATA_ERROR, ICAL_ERROR_NONFATAL); do { + cnt++; line = icalparser_get_line(parser, line_gen_func); if ((c = icalparser_add_line(parser, line)) != 0) { @@ -676,7 +678,7 @@ icalcomponent *icalparser_parse(icalparser *parser, icalmemory_free_buffer(line); cont = 1; } - } while (cont); + } while (cont && cnt < TMP_BUF_SIZE); icalerror_set_error_state(ICAL_MALFORMEDDATA_ERROR, es); |