Sync from SUSE:SLFO:Main libical revision d302275fd1dd59e526bc9115a6f9c956

This commit is contained in:
Adrian Schröter 2024-10-03 17:29:30 +02:00
parent 05837ef9ea
commit abc269b627
8 changed files with 116 additions and 103 deletions

View File

@ -9,11 +9,46 @@ References: https://github.com/libical/libical/pull/354
src/libicalvcal/vcc.y | 17 +++++++++++------ src/libicalvcal/vcc.y | 17 +++++++++++------
2 files changed, 22 insertions(+), 12 deletions(-) 2 files changed, 22 insertions(+), 12 deletions(-)
diff --git a/src/libicalvcal/vcc.c b/src/libicalvcal/vcc.c Index: libical-3.0.17/src/libicalvcal/vcc.c
index d47bc099..c2a743c2 100644 ===================================================================
--- a/src/libicalvcal/vcc.c --- libical-3.0.17.orig/src/libicalvcal/vcc.c
+++ b/src/libicalvcal/vcc.c +++ libical-3.0.17/src/libicalvcal/vcc.c
@@ -1126,6 +1126,15 @@ static int match_begin_end_name(int end) { @@ -985,6 +985,15 @@ static int match_begin_end_name(int end)
return 0;
}
+static int hexdigit_decode(char c)
+{
+ if (c >= '0' && c <= '9')
+ return c - '0';
+ if (c >= 'A' && c <= 'F')
+ return c - 'A' + 10;
+ return -1;
+}
+
static char* lexGetQuotedPrintable(void)
{
char cur;
@@ -998,12 +1007,8 @@ static char* lexGetQuotedPrintable(void)
int next[2];
int i;
for (i = 0; i < 2; i++) {
- next[i] = lexGetc();
- if (next[i] >= '0' && next[i] <= '9')
- c = c * 16 + next[i] - '0';
- else if (next[i] >= 'A' && next[i] <= 'F')
- c = c * 16 + next[i] - 'A' + 10;
- else
+ next[i] = hexdigit_decode(lexGetc());
+ if (next[i] < 0)
break;
}
if (i == 0) {
Index: libical-3.0.17/src/libicalvcal/vcc.y
===================================================================
--- libical-3.0.17.orig/src/libicalvcal/vcc.y
+++ libical-3.0.17/src/libicalvcal/vcc.y
@@ -949,6 +949,15 @@ static int match_begin_end_name(int end)
return 0; return 0;
} }
@ -29,7 +64,7 @@ index d47bc099..c2a743c2 100644
static char* lexGetQuotedPrintable() static char* lexGetQuotedPrintable()
{ {
char cur; char cur;
@@ -1139,12 +1148,8 @@ static char* lexGetQuotedPrintable() @@ -962,12 +971,8 @@ static char* lexGetQuotedPrintable()
int next[2]; int next[2];
int i; int i;
for (i = 0; i < 2; i++) { for (i = 0; i < 2; i++) {
@ -44,41 +79,3 @@ index d47bc099..c2a743c2 100644
break; break;
} }
if (i == 0) { if (i == 0) {
diff --git a/src/libicalvcal/vcc.y b/src/libicalvcal/vcc.y
index d97ea83b..45243df6 100644
--- a/src/libicalvcal/vcc.y
+++ b/src/libicalvcal/vcc.y
@@ -947,6 +947,15 @@ static int match_begin_end_name(int end) {
return 0;
}
+static int hexdigit_decode(char c)
+{
+ if (c >= '0' && c <= '9')
+ return c - '0';
+ if (c >= 'A' && c <= 'F')
+ return c - 'A' + 10;
+ return -1;
+}
+
static char* lexGetQuotedPrintable()
{
char cur;
@@ -960,12 +969,8 @@ static char* lexGetQuotedPrintable()
int next[2];
int i;
for (i = 0; i < 2; i++) {
- next[i] = lexGetc();
- if (next[i] >= '0' && next[i] <= '9')
- c = c * 16 + next[i] - '0';
- else if (next[i] >= 'A' && next[i] <= 'F')
- c = c * 16 + next[i] - 'A' + 10;
- else
+ next[i] = hexdigit_decode(lexGetc());
+ if (next[i] < 0)
break;
}
if (i == 0) {
--
2.19.1

View File

@ -15,11 +15,24 @@ References: #353
src/libicalvcal/vcc.y | 2 ++ src/libicalvcal/vcc.y | 2 ++
2 files changed, 4 insertions(+) 2 files changed, 4 insertions(+)
diff --git a/src/libicalvcal/vcc.c b/src/libicalvcal/vcc.c Index: libical-3.0.17/src/libicalvcal/vcc.c
index c2a743c2..29354df4 100644 ===================================================================
--- a/src/libicalvcal/vcc.c --- libical-3.0.17.orig/src/libicalvcal/vcc.c
+++ b/src/libicalvcal/vcc.c +++ libical-3.0.17/src/libicalvcal/vcc.c
@@ -1132,6 +1132,8 @@ static int hexdigit_decode(char c) @@ -991,6 +991,8 @@ static int hexdigit_decode(char c)
return c - '0';
if (c >= 'A' && c <= 'F')
return c - 'A' + 10;
+ if (c >= 'a' && c <= 'f')
+ return c - 'a' + 10;
return -1;
}
Index: libical-3.0.17/src/libicalvcal/vcc.y
===================================================================
--- libical-3.0.17.orig/src/libicalvcal/vcc.y
+++ libical-3.0.17/src/libicalvcal/vcc.y
@@ -955,6 +955,8 @@ static int hexdigit_decode(char c)
return c - '0'; return c - '0';
if (c >= 'A' && c <= 'F') if (c >= 'A' && c <= 'F')
return c - 'A' + 10; return c - 'A' + 10;
@ -28,19 +41,3 @@ index c2a743c2..29354df4 100644
return -1; return -1;
} }
diff --git a/src/libicalvcal/vcc.y b/src/libicalvcal/vcc.y
index 45243df6..a052e9a2 100644
--- a/src/libicalvcal/vcc.y
+++ b/src/libicalvcal/vcc.y
@@ -953,6 +953,8 @@ static int hexdigit_decode(char c)
return c - '0';
if (c >= 'A' && c <= 'F')
return c - 'A' + 10;
+ if (c >= 'a' && c <= 'f')
+ return c - 'a' + 10;
return -1;
}
--
2.19.1

View File

@ -15,11 +15,11 @@ References: #353
src/libicalvcal/vcc.y | 38 ++++++++++++++++---------------------- src/libicalvcal/vcc.y | 38 ++++++++++++++++----------------------
2 files changed, 32 insertions(+), 44 deletions(-) 2 files changed, 32 insertions(+), 44 deletions(-)
diff --git a/src/libicalvcal/vcc.c b/src/libicalvcal/vcc.c Index: libical-3.0.17/src/libicalvcal/vcc.c
index 29354df4..f723a4e1 100644 ===================================================================
--- a/src/libicalvcal/vcc.c --- libical-3.0.17.orig/src/libicalvcal/vcc.c
+++ b/src/libicalvcal/vcc.c +++ libical-3.0.17/src/libicalvcal/vcc.c
@@ -1146,31 +1146,25 @@ static char* lexGetQuotedPrintable() @@ -1005,31 +1005,25 @@ static char* lexGetQuotedPrintable(void)
cur = lexGetc(); cur = lexGetc();
switch (cur) { switch (cur) {
case '=': { case '=': {
@ -67,11 +67,11 @@ index 29354df4..f723a4e1 100644
break; break;
} /* '=' */ } /* '=' */
case '\n': { case '\n': {
diff --git a/src/libicalvcal/vcc.y b/src/libicalvcal/vcc.y Index: libical-3.0.17/src/libicalvcal/vcc.y
index a052e9a2..4f52fe35 100644 ===================================================================
--- a/src/libicalvcal/vcc.y --- libical-3.0.17.orig/src/libicalvcal/vcc.y
+++ b/src/libicalvcal/vcc.y +++ libical-3.0.17/src/libicalvcal/vcc.y
@@ -967,31 +967,25 @@ static char* lexGetQuotedPrintable() @@ -969,31 +969,25 @@ static char* lexGetQuotedPrintable()
cur = lexGetc(); cur = lexGetc();
switch (cur) { switch (cur) {
case '=': { case '=': {
@ -119,6 +119,3 @@ index a052e9a2..4f52fe35 100644
break; break;
} /* '=' */ } /* '=' */
case '\n': { case '\n': {
--
2.19.1

View File

@ -15,11 +15,11 @@ References: #353
src/libicalvcal/vcc.y | 5 +++-- src/libicalvcal/vcc.y | 5 +++--
2 files changed, 6 insertions(+), 4 deletions(-) 2 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/src/libicalvcal/vcc.c b/src/libicalvcal/vcc.c Index: libical-3.0.17/src/libicalvcal/vcc.c
index f723a4e1..fd056992 100644 ===================================================================
--- a/src/libicalvcal/vcc.c --- libical-3.0.17.orig/src/libicalvcal/vcc.c
+++ b/src/libicalvcal/vcc.c +++ libical-3.0.17/src/libicalvcal/vcc.c
@@ -1167,8 +1167,9 @@ static char* lexGetQuotedPrintable() @@ -1026,8 +1026,9 @@ static char* lexGetQuotedPrintable(void)
lexAppendc(c | d); lexAppendc(c | d);
break; break;
} /* '=' */ } /* '=' */
@ -31,11 +31,11 @@ index f723a4e1..fd056992 100644
goto EndString; goto EndString;
} }
case (char)EOF: case (char)EOF:
diff --git a/src/libicalvcal/vcc.y b/src/libicalvcal/vcc.y Index: libical-3.0.17/src/libicalvcal/vcc.y
index 4f52fe35..df770df6 100644 ===================================================================
--- a/src/libicalvcal/vcc.y --- libical-3.0.17.orig/src/libicalvcal/vcc.y
+++ b/src/libicalvcal/vcc.y +++ libical-3.0.17/src/libicalvcal/vcc.y
@@ -988,8 +988,9 @@ static char* lexGetQuotedPrintable() @@ -990,8 +990,9 @@ static char* lexGetQuotedPrintable()
lexAppendc(c | d); lexAppendc(c | d);
break; break;
} /* '=' */ } /* '=' */
@ -47,6 +47,3 @@ index 4f52fe35..df770df6 100644
goto EndString; goto EndString;
} }
case (char)EOF: case (char)EOF:
--
2.19.1

BIN
libical-3.0.16.tar.gz (Stored with Git LFS)

Binary file not shown.

BIN
libical-3.0.18.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,3 +1,28 @@
-------------------------------------------------------------------
Mon Apr 22 09:16:17 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 3.0.18:
* Requires CMake v3.5.0 or higher
* Escape ^ (U+005E) character in parameter values according to
RFC 6868
* New CMake option LIBICAL_BUILD_EXAMPLES to disable building
the examples
* Should be able to use the project as a submodule
* Built-in timezones updated to tzdata2024a
-------------------------------------------------------------------
Sat Nov 18 19:52:45 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 3.0.17:
* Escape commas in x-property TEXT values
* Built-in timezones updated to tzdata2023c
* icalparser_ctrl setting defines how to handle invalid CONTROL
characters during parsing
* New publicly available functions:
+ get_zone_directory()
+ icalparser_get_ctrl
+ icalparser_set_ctrl
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Oct 19 09:14:47 UTC 2022 - Chris Coutinho <chrisbcoutinho@gmail.com> Wed Oct 19 09:14:47 UTC 2022 - Chris Coutinho <chrisbcoutinho@gmail.com>
@ -45,7 +70,7 @@ Sat Dec 11 09:22:05 UTC 2021 - Dirk Müller <dmueller@suse.com>
* Handle if DTEND and DURATION are both missing * Handle if DTEND and DURATION are both missing
* Improved FindICU (copied from official CMake) * Improved FindICU (copied from official CMake)
* Buildsystem fixes (especially for the Ninja generator) * Buildsystem fixes (especially for the Ninja generator)
* Built-in timezones updated to tzdata2021e * Built-in timezones updated to tzdata2021e
------------------------------------------------------------------- -------------------------------------------------------------------
Mon Dec 6 07:48:27 UTC 2021 - Dirk Müller <dmueller@suse.com> Mon Dec 6 07:48:27 UTC 2021 - Dirk Müller <dmueller@suse.com>
@ -63,8 +88,8 @@ Mon Dec 6 07:48:27 UTC 2021 - Dirk Müller <dmueller@suse.com>
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Apr 20 09:08:38 UTC 2021 - Paolo Stivanin <info@paolostivanin.com> Tue Apr 20 09:08:38 UTC 2021 - Paolo Stivanin <info@paolostivanin.com>
- update to 3.0.10: - update to 3.0.10:
* Fix generating wrong recurrence rules * Fix generating wrong recurrence rules
* Fix a bug computing transitions in tzfiles * Fix a bug computing transitions in tzfiles
* Fix reading TZif files to use TZ string in the footer as the last * Fix reading TZif files to use TZ string in the footer as the last
(non-terminating) transitions (non-terminating) transitions
@ -74,7 +99,7 @@ Tue Apr 20 09:08:38 UTC 2021 - Paolo Stivanin <info@paolostivanin.com>
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Apr 7 21:07:41 UTC 2021 - Dirk Müller <dmueller@suse.com> Wed Apr 7 21:07:41 UTC 2021 - Dirk Müller <dmueller@suse.com>
- filelist fix for the glib build - filelist fix for the glib build
------------------------------------------------------------------- -------------------------------------------------------------------
Sun Jan 24 20:01:42 UTC 2021 - Dirk Müller <dmueller@suse.com> Sun Jan 24 20:01:42 UTC 2021 - Dirk Müller <dmueller@suse.com>
@ -91,7 +116,7 @@ Sun Jan 24 20:01:42 UTC 2021 - Dirk Müller <dmueller@suse.com>
* Add backwards compatibility for previous TZIDs * Add backwards compatibility for previous TZIDs
* Built-in timezones updated to tzdata2020d * Built-in timezones updated to tzdata2020d
* Fix build with newer libicu * Fix build with newer libicu
* Fix cross-compile support in libical-glib * Fix cross-compile support in libical-glib
- remove 0001-Fix-build-with-icu-68.1.patch libical-read-v2-v3-data.patch: - remove 0001-Fix-build-with-icu-68.1.patch libical-read-v2-v3-data.patch:
upstream upstream

View File

@ -1,7 +1,7 @@
# #
# spec file # spec file for package libical
# #
# Copyright (c) 2022 SUSE LLC # Copyright (c) 2024 SUSE LLC
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -26,7 +26,7 @@
%bcond_with glib %bcond_with glib
%endif %endif
Name: libical%{name_ext} Name: libical%{name_ext}
Version: 3.0.16 Version: 3.0.18
Release: 0 Release: 0
URL: https://github.com/libical/libical URL: https://github.com/libical/libical
Source: %{url}/releases/download/v%{version}/libical-%{version}.tar.gz Source: %{url}/releases/download/v%{version}/libical-%{version}.tar.gz
@ -38,7 +38,7 @@ Patch3: 0003-vcc.y-fix-infinite-loop-with-non-hex-digits.patch
Patch4: 0004-vobject.c-vCard-Unicode-reading-support.patch Patch4: 0004-vobject.c-vCard-Unicode-reading-support.patch
Patch5: 0005-vcc.y-do-not-ignore-field-separator-in-QUOTED-PRINTA.patch Patch5: 0005-vcc.y-do-not-ignore-field-separator-in-QUOTED-PRINTA.patch
BuildRequires: c++_compiler BuildRequires: c++_compiler
BuildRequires: cmake >= 3.1 BuildRequires: cmake >= 3.5
BuildRequires: pkgconfig BuildRequires: pkgconfig
BuildRequires: pkgconfig(icu-i18n) BuildRequires: pkgconfig(icu-i18n)
%if %{without glib} %if %{without glib}