summaryrefslogtreecommitdiffstats
path: root/meta/recipes-sato/libical/files/pthread-fix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-sato/libical/files/pthread-fix.patch')
-rw-r--r--meta/recipes-sato/libical/files/pthread-fix.patch52
1 files changed, 52 insertions, 0 deletions
diff --git a/meta/recipes-sato/libical/files/pthread-fix.patch b/meta/recipes-sato/libical/files/pthread-fix.patch
new file mode 100644
index 0000000000..aa7767f22d
--- /dev/null
+++ b/meta/recipes-sato/libical/files/pthread-fix.patch
@@ -0,0 +1,52 @@
1New added pthread feathre leads some deadlock with some unlock code missing.
2This patch fix it.
3
4Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
5
6Upstream-Status: Pending
7
8Index: libical-0.47/src/libical/icaltimezone.c
9===================================================================
10--- libical-0.47.orig/src/libical/icaltimezone.c 2011-12-16 13:42:25.000000000 +0800
11+++ libical-0.47/src/libical/icaltimezone.c 2011-12-16 14:16:25.000000000 +0800
12@@ -1773,7 +1773,7 @@
13 filename = (char*) malloc (filename_len);
14 if (!filename) {
15 icalerror_set_errno(ICAL_NEWFAILED_ERROR);
16- return;
17+ goto out;
18 }
19
20 snprintf (filename, filename_len, "%s/%s.ics", get_zone_directory(),
21@@ -1783,7 +1783,7 @@
22 free (filename);
23 if (!fp) {
24 icalerror_set_errno(ICAL_FILE_ERROR);
25- return;
26+ goto out;
27 }
28
29
30@@ -1807,7 +1807,7 @@
31
32 if (!subcomp) {
33 icalerror_set_errno(ICAL_PARSE_ERROR);
34- return;
35+ goto out;
36 }
37
38 icaltimezone_get_vtimezone_properties (zone, subcomp);
39@@ -1817,10 +1817,12 @@
40 icalcomponent_free(comp);
41 }
42 #endif
43-#ifdef HAVE_PTHREAD
44+
45 out:
46+#ifdef HAVE_PTHREAD
47 pthread_mutex_unlock(&builtin_mutex);
48 #endif
49+ return;
50 }
51
52