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 +++++++++++------
2 files changed, 22 insertions(+), 12 deletions(-)
diff --git a/src/libicalvcal/vcc.c b/src/libicalvcal/vcc.c
index d47bc099..c2a743c2 100644
--- a/src/libicalvcal/vcc.c
+++ b/src/libicalvcal/vcc.c
@@ -1126,6 +1126,15 @@ static int match_begin_end_name(int end) {
Index: libical-3.0.17/src/libicalvcal/vcc.c
===================================================================
--- libical-3.0.17.orig/src/libicalvcal/vcc.c
+++ libical-3.0.17/src/libicalvcal/vcc.c
@@ -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;
}
@ -29,7 +64,7 @@ index d47bc099..c2a743c2 100644
static char* lexGetQuotedPrintable()
{
char cur;
@@ -1139,12 +1148,8 @@ static char* lexGetQuotedPrintable()
@@ -962,12 +971,8 @@ static char* lexGetQuotedPrintable()
int next[2];
int i;
for (i = 0; i < 2; i++) {
@ -44,41 +79,3 @@ index d47bc099..c2a743c2 100644
break;
}
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,11 @@ References: #353
src/libicalvcal/vcc.y | 2 ++
2 files changed, 4 insertions(+)
diff --git a/src/libicalvcal/vcc.c b/src/libicalvcal/vcc.c
index c2a743c2..29354df4 100644
--- a/src/libicalvcal/vcc.c
+++ b/src/libicalvcal/vcc.c
@@ -1132,6 +1132,8 @@ static int hexdigit_decode(char c)
Index: libical-3.0.17/src/libicalvcal/vcc.c
===================================================================
--- libical-3.0.17.orig/src/libicalvcal/vcc.c
+++ libical-3.0.17/src/libicalvcal/vcc.c
@@ -991,6 +991,8 @@ static int hexdigit_decode(char c)
return c - '0';
if (c >= 'A' && c <= 'F')
return c - 'A' + 10;
@ -28,11 +28,11 @@ index c2a743c2..29354df4 100644
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)
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';
if (c >= 'A' && c <= 'F')
return c - 'A' + 10;
@ -41,6 +41,3 @@ index 45243df6..a052e9a2 100644
return -1;
}
--
2.19.1

View File

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

View File

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

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
# remain the property of their copyright owners, unless otherwise agreed
@ -26,7 +26,7 @@
%bcond_with glib
%endif
Name: libical%{name_ext}
Version: 3.0.16
Version: 3.0.18
Release: 0
URL: https://github.com/libical/libical
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
Patch5: 0005-vcc.y-do-not-ignore-field-separator-in-QUOTED-PRINTA.patch
BuildRequires: c++_compiler
BuildRequires: cmake >= 3.1
BuildRequires: cmake >= 3.5
BuildRequires: pkgconfig
BuildRequires: pkgconfig(icu-i18n)
%if %{without glib}