Commit graph

900 commits

Author SHA1 Message Date
Frederik Seiffert
47ed291b80 Fix possible heap corruption when converting to NSNonLossyASCIIStringEncoding. 2021-07-03 08:34:14 +02:00
Frederik Seiffert
8137b5a2a0 Fix lookup of string encodings with high numeric values in encoding table 2021-06-17 17:53:22 +02:00
Frederik Seiffert
0582eddd96 Export string constants and annotate exported function implementations
Moves scattered string constants to externs.m, and removes obsolete code replacing constant strings.
2021-03-27 17:36:15 +01:00
Richard Frith-Macdonald
7c9c3b8605 Fix potential deadlock found by Wolfgang 2021-02-22 15:59:29 +00:00
Richard Frith-Macdonald
edc771775f fix missing check to see whether we have already initialised 2021-02-18 21:27:21 +00:00
Richard Frith-Macdonald
958449e90f Initialise XMLParser in main thread 2021-02-18 21:18:41 +00:00
Frederik Seiffert
61709e6101 Support building on Windows with Clang MSVC target 2021-02-03 15:02:27 +01:00
Richard Frith-Macdonald
09e527c0fd Fix to make value pointed to by mutationsPtr be unsigned long. 2020-12-04 11:08:16 -05:00
Richard Frith-Macdonald
8141fe03f7 use memcpy rather than strncpy to avoid compiler warning 2020-12-03 12:29:53 -05:00
Richard Frith-Macdonald
1b7bf26bea Merge changes for NSURLSession from EngageHub (formerly Brainstorm). 2020-11-29 06:57:47 -05:00
Richard Frith-Macdonald
0dbd863dde Add optimisation for the use of GSImmutableString so that it can make use of the layout of the underlying mutable string that the GSImmutableString is a proxy for. 2020-11-22 09:55:39 -05:00
Richard Frith-Macdonald
3bb72398ee Report YES for GSImmutableString being a proxy 2020-11-22 08:08:00 -05:00
Richard Frith-Macdonald
1170e0c0c1 add casts to avoid compiler warnings 2020-11-20 01:42:33 -05:00
Richard Frith-Macdonald
8178e52806 Correct checks for validity of the second UTF16 value in a surrogate pair 2020-11-19 08:27:06 -05:00
Richard Frith-Macdonald
d4df4b6d87 Add methods to control size of in-memory queue os emails 2020-11-14 04:25:34 +00:00
Richard Frith-Macdonald
938f280b87 Implement fast enumeration for insensitive dictionary 2020-09-08 15:14:19 +01:00
Richard Frith-Macdonald
1ddcb25b7e Avcoid coverity warning 2020-08-23 16:01:21 +01:00
Richard Frith-Macdonald
32f306b615 avoid coverity warning 2020-08-23 15:48:47 +01:00
Richard Frith-Macdonald
48c270b9ca Improve -contentFile to check the content-type header before content-disposition 2020-08-08 19:30:18 +01:00
Frederik Seiffert
5dfda50d82 Implement -[NSXMLParser initWithStream:]. 2020-05-05 19:41:22 +02:00
Richard Frith-Macdonald
132729e6e0 Add casts to avoid compiler warnings bout type of method 2020-04-15 10:40:41 +01:00
Richard Frith-Macdonald
09e9354f08 Fully type method implementatyion pointers. 2020-04-15 10:31:55 +01:00
Richard Frith-Macdonald
53f5957030 When building outside GNUstep (additions for apple), include the runtime
declarations and fix error in casting self.
2020-04-14 17:18:24 +01:00
Richard Frith-Macdonald
2e07244f8e Updates to move towards ARC 2020-02-08 16:42:17 +00:00
fredkiefer
d1d9cd65a1 Handle case where scheme is missing from the URL. 2020-01-24 23:27:30 +01:00
Frederik Seiffert
5036cb4734 Fixed incorrect while loops for noreturn functions
Silences warnings "function declared 'noreturn' should not return [-Winvalid-noreturn]".
2020-01-06 22:21:20 +01:00
Marcus Müller
5bfbf62f06 Guard inclusion of <malloc.h> as to not break FreeBSD 2019-08-16 01:11:18 +02:00
Frederik Seiffert
e3be0c0476 Use UTF-8 as default encoding on Android.
Android uses UTF-8 as default encoding, e.g. for file paths.

This fixes file handling support for paths containing non-ASCII characters on Android, which would previously throw an exception as they couldn't be converted to C strings using ISO Latin 1 encoding.
2019-08-14 11:46:21 +02:00
Richard Frith-Macdonald
dd36855923 Improved memory usage reporting mechanisms 2019-08-08 17:20:25 +01:00
fredkiefer
d774dda8a7 * Source/GSXML.m (fatalErrorFunction): Use correct function to get
line number.
* Source/NSOperation.m (_execute): Surround with NS_DURING to free
lock on error.
2019-07-01 22:58:55 +02:00
Richard Frith-Macdonald
3f7d54a33f improve reportingn of memory usage 2019-06-11 14:07:10 +01:00
Richard Frith-Macdonald
dc481825ec remove leftover logging 2019-02-27 17:24:39 +00:00
Richard Frith-Macdonald
06019034b0 header line folding fix 2019-02-15 14:13:14 +00:00
Richard Frith-Macdonald
d6ef10f224 fixes for encoding in mime header encoded word 2019-02-14 11:19:33 +00:00
fredkiefer
a31506564e * Source/Additions/Unicode.m: Move variable u to the correct scope
and initialize it.
2019-01-06 23:33:45 +01:00
Richard Frith-Macdonald
280b2cbe83 Changes for keeping a connection in use 2018-12-04 13:34:53 +00:00
Riccardo Mottola
441f13828d add missing header 2018-08-07 15:46:02 +02:00
Richard Frith-Macdonald
15af957fd0 Fix typo in error message 2018-07-27 09:28:51 +01:00
Richard Frith-Macdonald
caedb21b51 missed in last git commit 2018-07-14 10:27:55 +01:00
Richard Frith-Macdonald
e60b2004af UTF8 parsing improvements 2018-07-14 07:25:40 +01:00
Richard Frith-Macdonald
bc2dd4b627 try to improve startup reliability 2018-04-12 18:08:53 +01:00
Richard Frith-Macdonald
3ced3237e8 Use standard locks rathere than obsolete lazy lock classes 2018-04-10 14:59:35 +01:00
Richard Frith-Macdonald
7274cbaa55 Minor unicode range handling improvements 2018-04-09 11:55:46 +01:00
Richard Frith-Macdonald
b3ce87ff4f tweaks to keep static checker happy 2018-02-11 12:03:52 +00:00
Richard Frith-Macdonald
f72708742a Avoid compiler warnings 2018-02-11 09:46:07 +00:00
Richard Frith-Macdonald
c515993d45 avoid checker warning 2018-02-07 13:31:26 +00:00
Richard Frith-Macdonald
5277bf7043 Keep checker happy by avoiding possible null pointer deref 2018-02-04 10:35:15 +00:00
Richard Frith-Macdonald
4f50f358c3 more fixups for unicode and to avoid warnings 2018-02-04 08:38:20 +00:00
Richard Frith-Macdonald
41fd87ce35 potential resource leak fix 2018-02-03 15:57:04 +00:00
Richard Frith-Macdonald
f718aa30c9 Make it clear that we are doing a standard binary search and allow for changes
to character composition/decomposition in future.
2018-01-31 07:42:59 +00:00
Richard Frith-Macdonald
56aaa72d3d be more careful about closing iconv handle on errors 2018-01-30 14:03:01 +00:00
Richard Frith-Macdonald
86af4da784 fix possible resource leak on conversion failure 2018-01-30 07:38:08 +00:00
Richard Frith-Macdonald
d8e7607582 Tweaks to let comp[iler know that methods to raise an exception don't return. 2018-01-25 10:05:52 +00:00
Richard Frith-Macdonald
07ba3ec932 add comments 2018-01-23 14:07:46 +00:00
Richard Frith-Macdonald
c7ba537c75 fix issues picked up by automated checker 2018-01-23 11:32:36 +00:00
Richard Frith-Macdonald
925f1dd5e1 Add Yavor Doganov's patches for tests and config. Add fixes for GSXML
validation of xml documents
2018-01-14 12:30:13 +00:00
Richard Frith-Macdonald
31257785d6 External entity resolution turned off by default for security 2018-01-11 16:39:21 +00:00
Richard Frith-Macdonald
c82dd20280 Avoid bogus compiler warning about string literal comparison 2017-06-30 07:37:05 +01:00
Richard Frith-MacDonald
d28ab9eaac Implement OSX compatible non-lossy ascii encoding
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40395 72102866-910b-0410-8b05-ffd578937521
2017-03-17 12:04:19 +00:00
Richard Frith-MacDonald
343ceb58a8 fix to build on osx
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40392 72102866-910b-0410-8b05-ffd578937521
2017-03-17 09:28:01 +00:00
Wolfgang Lux
80a0d3f28d Fix an off by 1 calculation which meant that weekOfYear would return 2
for the first week of a year whenever the first Thursday of that year
is 7 Jan, for instance 2016.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40239 72102866-910b-0410-8b05-ffd578937521
2016-11-28 09:01:04 +00:00
Richard Frith-MacDonald
0fe344d12a Partial fix/update for noncharacter codepoints,
also check for task exit more consistently


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40125 72102866-910b-0410-8b05-ffd578937521
2016-10-05 17:44:00 +00:00
Niels Grewe
b1c979898d Fix detection of the charset in XML data
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40090 72102866-910b-0410-8b05-ffd578937521
2016-09-19 15:56:51 +00:00
Wolfgang Lux
ef5fd8a497 Add missing checks to avoid calling caseInsensitiveCompare: with nil
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40086 72102866-910b-0410-8b05-ffd578937521
2016-09-16 12:28:05 +00:00
Richard Frith-MacDonald
ead1505a3c Fix typo causing preamature termination of long headers
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40065 72102866-910b-0410-8b05-ffd578937521
2016-08-28 09:53:38 +00:00
Richard Frith-MacDonald
33ed35331b Various configure/build tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40062 72102866-910b-0410-8b05-ffd578937521
2016-08-19 12:20:24 +00:00
Richard Frith-MacDonald
a6bce78c64 First attempt at GSMimeSerializer for more controlled serialisation of
documents so we can choose between a form suitable for old SMTP MTAs, or
for modern binary-safe transports.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40049 72102866-910b-0410-8b05-ffd578937521
2016-08-03 09:24:53 +00:00
Richard Frith-MacDonald
205f26ec86 Thread deadlock fixup
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40033 72102866-910b-0410-8b05-ffd578937521
2016-07-26 08:20:09 +00:00
Richard Frith-MacDonald
eb497bf67e tweak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40013 72102866-910b-0410-8b05-ffd578937521
2016-07-19 12:23:40 +00:00
Richard Frith-MacDonald
8180e928f0 tweak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39853 72102866-910b-0410-8b05-ffd578937521
2016-06-08 11:49:42 +00:00
Richard Frith-MacDonald
209146a7a4 improve header capitalisation
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39850 72102866-910b-0410-8b05-ffd578937521
2016-06-07 18:12:13 +00:00
Richard Frith-MacDonald
407d06d7b4 tweak again
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39849 72102866-910b-0410-8b05-ffd578937521
2016-06-07 16:45:56 +00:00
Richard Frith-MacDonald
73f18a6998 Fixup encoding issue
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39848 72102866-910b-0410-8b05-ffd578937521
2016-06-07 16:38:37 +00:00
Richard Frith-MacDonald
751e998014 fixup bad commit
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39843 72102866-910b-0410-8b05-ffd578937521
2016-06-07 07:20:12 +00:00
Richard Frith-MacDonald
48ab2e60e0 fixup conversion to 7bit-safe
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39842 72102866-910b-0410-8b05-ffd578937521
2016-06-07 07:12:25 +00:00
Richard Frith-MacDonald
0adeacda9a Improve API for making doc 7bit safe
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39841 72102866-910b-0410-8b05-ffd578937521
2016-06-06 21:16:30 +00:00
Richard Frith-MacDonald
124908fd1d mingw64 tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39780 72102866-910b-0410-8b05-ffd578937521
2016-05-19 07:27:26 +00:00
Richard Frith-MacDonald
bca2d77fe5 Fix bug encoding long headers without spaces
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39752 72102866-910b-0410-8b05-ffd578937521
2016-05-13 11:08:46 +00:00
Richard Frith-MacDonald
bdf7fb89d8 Improve logging
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39693 72102866-910b-0410-8b05-ffd578937521
2016-04-25 14:55:19 +00:00
Richard Frith-MacDonald
3aa0288d37 Locale fixups
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39655 72102866-910b-0410-8b05-ffd578937521
2016-04-09 05:49:16 +00:00
Richard Frith-MacDonald
d40d219015 removal of garbage collection
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39608 72102866-910b-0410-8b05-ffd578937521
2016-03-25 11:15:28 +00:00
Richard Frith-MacDonald
67e4c0581d standardise -setDebug: extension
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39554 72102866-910b-0410-8b05-ffd578937521
2016-03-17 08:12:45 +00:00
Richard Frith-MacDonald
a0c97c1ddd deprecate confusing extension in favour of simpler ARC-complient method
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39520 72102866-910b-0410-8b05-ffd578937521
2016-03-10 16:50:41 +00:00
Richard Frith-MacDonald
62d2bcbabc changes for use of _WIN32 define on windows
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39492 72102866-910b-0410-8b05-ffd578937521
2016-03-09 13:16:16 +00:00
Richard Frith-MacDonald
3e2ca62f1a Fix typos in comments, add a couple of testcases
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39414 72102866-910b-0410-8b05-ffd578937521
2016-02-25 11:55:58 +00:00
Richard Frith-MacDonald
297495896d Fix error folding header with non-ascci data
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39413 72102866-910b-0410-8b05-ffd578937521
2016-02-25 11:47:49 +00:00
Richard Frith-MacDonald
3db4287285 Aim to improve compatibility with old/buggy parsers.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39395 72102866-910b-0410-8b05-ffd578937521
2016-02-18 15:52:00 +00:00
Richard Frith-MacDonald
cf0b385788 On type missmatch report whole document
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39388 72102866-910b-0410-8b05-ffd578937521
2016-02-17 14:11:50 +00:00
Richard Frith-MacDonald
3ab8d10f1f keep key=value pairs in structured fields on the same line if possible.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39320 72102866-910b-0410-8b05-ffd578937521
2016-01-29 15:59:56 +00:00
Richard Frith-MacDonald
5318d5f8c2 tweak to fold after semicolon in preference to equals sign when writing out
structured field


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39319 72102866-910b-0410-8b05-ffd578937521
2016-01-29 15:23:24 +00:00
Richard Frith-MacDonald
478e376882 quick hack to avoid splitting 'boundary' parameter values
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39310 72102866-910b-0410-8b05-ffd578937521
2016-01-23 15:30:05 +00:00
Niels Grewe
26712aed33 Fix folding of headers containing underscores.
The quotedWord() and quotableLength() functions were
disagreeing about which characters to quote. 



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39303 72102866-910b-0410-8b05-ffd578937521
2016-01-21 22:20:53 +00:00
Richard Frith-MacDonald
dec747e0b9 fixup a few errors in last mod
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39301 72102866-910b-0410-8b05-ffd578937521
2016-01-21 19:27:28 +00:00
Richard Frith-MacDonald
0359dc0a3d Updates for header folding support (to preserve exact white space).
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39300 72102866-910b-0410-8b05-ffd578937521
2016-01-21 12:49:15 +00:00
Richard Frith-MacDonald
bf5038e2ac protect from both old runtime and old compiler
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39042 72102866-910b-0410-8b05-ffd578937521
2015-10-08 09:13:32 +00:00
Richard Frith-MacDonald
f6271e8e48 fixup for old runtime
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39041 72102866-910b-0410-8b05-ffd578937521
2015-10-08 09:04:48 +00:00
Richard Frith-MacDonald
e8f8da0618 fixup for old runtime
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39040 72102866-910b-0410-8b05-ffd578937521
2015-10-08 08:52:32 +00:00
Richard Frith-MacDonald
dd3fface17 fix escaped encoding to be ascii
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39036 72102866-910b-0410-8b05-ffd578937521
2015-10-07 06:25:18 +00:00
Richard Frith-MacDonald
0c5d96eebd changes intended to allow use of _Bool throughout
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39010 72102866-910b-0410-8b05-ffd578937521
2015-09-22 09:46:10 +00:00
Richard Frith-MacDonald
b27f60bb58 tweak format of base64 encoded data content
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38957 72102866-910b-0410-8b05-ffd578937521
2015-08-30 10:50:59 +00:00