diff options
author | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2016-12-09 02:40:53 +0100 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-01-31 15:00:30 +0100 |
commit | 2c3fad1495c4069af684da02765b9914185cbfd1 (patch) | |
tree | f965a4a122af2754b5e487601dd9faab80fdb251 | |
parent | d50224306a5c070918c55cd9434d070912dd9a02 (diff) |
libcmis: error handling for datetime string parser
Change-Id: Ie5be0307fa8ac0292f7692f9674e07776cb1948d
-rw-r--r-- | external/libcmis/UnpackedTarball_cmis.mk | 1 | ||||
-rw-r--r-- | external/libcmis/libcmis-fix-error-handling.patch | 20 |
2 files changed, 21 insertions, 0 deletions
diff --git a/external/libcmis/UnpackedTarball_cmis.mk b/external/libcmis/UnpackedTarball_cmis.mk index 0b76efd254a1..58373bdbcbf6 100644 --- a/external/libcmis/UnpackedTarball_cmis.mk +++ b/external/libcmis/UnpackedTarball_cmis.mk @@ -19,6 +19,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,cmis, \ external/libcmis/libcmis-google-2FA-implementation.patch \ external/libcmis/libcmis-fix-google-drive-2.patch \ external/libcmis/libcmis-sharepoint-repository-root.patch \ + external/libcmis/libcmis-fix-error-handling.patch \ )) ifeq ($(OS)$(COM),WNTMSC) diff --git a/external/libcmis/libcmis-fix-error-handling.patch b/external/libcmis/libcmis-fix-error-handling.patch new file mode 100644 index 000000000000..09df7ac9ebe5 --- /dev/null +++ b/external/libcmis/libcmis-fix-error-handling.patch @@ -0,0 +1,20 @@ +diff -ur cmis.org/src/libcmis/xml-utils.cxx cmis/src/libcmis/xml-utils.cxx +--- cmis.org/src/libcmis/xml-utils.cxx 2016-12-09 02:19:47.900961750 +0100 ++++ cmis/src/libcmis/xml-utils.cxx 2016-12-09 02:23:56.392206339 +0100 +@@ -382,9 +382,14 @@ + // Get the time zone offset + boost::posix_time::time_duration tzOffset( boost::posix_time::duration_from_string( "+00:00" ) ); + ++ if ( dateTimeStr.empty( ) ) ++ return t; // obviously not a time ++ + size_t teePos = dateTimeStr.find( 'T' ); +- string noTzStr = dateTimeStr.substr( 0, teePos + 1 ); ++ if ( teePos == string::npos ) ++ return t; // obviously not a time + ++ string noTzStr = dateTimeStr.substr( 0, teePos + 1 ); + string timeStr = dateTimeStr.substr( teePos + 1 ); + + // Get the TZ if any + |