diff options
author | Stefan Walter <stefan@FreeBSD.org> | 2011-09-01 11:59:44 +0000 |
---|---|---|
committer | Stefan Walter <stefan@FreeBSD.org> | 2011-09-01 11:59:44 +0000 |
commit | f742683ea96a2cfb33e860ea382e99d60a6e6e1c (patch) | |
tree | 4539dbebe76c086893f0a8b0e75c85fcb281e636 | |
parent | Relinquish to the pool. (diff) |
Patch a bug in php-libawl that prevents iCal to display any calendar entries.
PR: 155120
Submitted by: Matthias Fechner <idefix@fechner.net>
Approved by: maintainer
Notes
Notes:
svn path=/head/; revision=280955
-rw-r--r-- | devel/php-libawl/Makefile | 4 | ||||
-rw-r--r-- | devel/php-libawl/files/patch-inc-iCalendar.php | 37 | ||||
-rw-r--r-- | devel/php-libawl/files/patch-inc-vComponents.php | 28 |
3 files changed, 69 insertions, 0 deletions
diff --git a/devel/php-libawl/Makefile b/devel/php-libawl/Makefile index a0b8d5a9ae62..2b2423f4eb30 100644 --- a/devel/php-libawl/Makefile +++ b/devel/php-libawl/Makefile @@ -5,6 +5,7 @@ PORTNAME= php-libawl PORTVERSION= 0.46 +PORTREVISION= 1 CATEGORIES= devel MASTER_SITES= http://debian.mcmillan.net.nz/packages/awl/ \ SF/rscds/awl/${PORTVERSION} @@ -26,6 +27,9 @@ pre-everything:: @${ECHO_CMD} "# you can customize the installation directory" @${ECHO_CMD} "# by setting LIBAWLDIR in /etc/make.conf" +post-patch: + ${RM} -f ${WRKSRC}/inc/*.orig + do-install: ${MKDIR} ${PREFIX}/${LIBAWLDIR}/ cd ${WRKSRC} && ${CP} -pR dba inc ${PREFIX}/${LIBAWLDIR}/ diff --git a/devel/php-libawl/files/patch-inc-iCalendar.php b/devel/php-libawl/files/patch-inc-iCalendar.php new file mode 100644 index 000000000000..8c2e1b8cda9b --- /dev/null +++ b/devel/php-libawl/files/patch-inc-iCalendar.php @@ -0,0 +1,37 @@ +--- inc/iCalendar.php.old 2011-02-28 14:10:05.863011862 +0100 ++++ inc/iCalendar.php 2011-02-28 14:10:54.276562796 +0100 +@@ -233,7 +233,7 @@ + function RenderParameters() { + $rendered = ""; + foreach( $this->parameters AS $k => $v ) { +- $escaped = preg_replace( "/([;:\"])/", '\\\\$1', $v); ++ $escaped = preg_replace( "/([;:])/", '\\\\$1', $v); + $rendered .= sprintf( ";%s=%s", $k, $escaped ); + } + return $rendered; +@@ -273,7 +273,7 @@ + default: + $escaped = str_replace( '\\', '\\\\', $escaped); + $escaped = preg_replace( '/\r?\n/', '\\n', $escaped); +- $escaped = preg_replace( "/([,;\"])/", '\\\\$1', $escaped); ++ $escaped = preg_replace( "/([,;])/", '\\\\$1', $escaped); + } + $property = sprintf( "%s%s:", $this->name, $this->RenderParameters() ); + if ( (strlen($property) + strlen($escaped)) <= 72 ) { +@@ -786,7 +786,7 @@ + */ + function CloneConfidential() { + $confidential = clone($this); +- $keep_properties = array( 'DTSTAMP', 'DTSTART', 'RRULE', 'DURATION', 'DTEND', 'UID', 'CLASS', 'TRANSP' ); ++ $keep_properties = array( 'DTSTAMP', 'DTSTART', 'RRULE', 'DURATION', 'DTEND', 'DUE', 'UID', 'CLASS', 'TRANSP', 'CREATED', 'LAST-MODIFIED' ); + $resource_components = array( 'VEVENT', 'VTODO', 'VJOURNAL' ); + $confidential->MaskComponents(array( 'VTIMEZONE', 'VEVENT', 'VTODO', 'VJOURNAL' )); + $confidential->MaskProperties($keep_properties, $resource_components ); +@@ -822,6 +822,7 @@ + foreach( $this->components AS $v ) { $rendered .= $v->Render(); } + $rendered .= "END:$this->type\r\n"; + ++ $rendered = preg_replace('{(?<!\r)\n}', '\r\n', $rendered); + if ( $unrestricted ) $this->rendered = $rendered; + + return $rendered; diff --git a/devel/php-libawl/files/patch-inc-vComponents.php b/devel/php-libawl/files/patch-inc-vComponents.php new file mode 100644 index 000000000000..36f33b699748 --- /dev/null +++ b/devel/php-libawl/files/patch-inc-vComponents.php @@ -0,0 +1,28 @@ +--- inc/vComponent.php.old 2010-12-01 04:18:52.000000000 +0100 ++++ inc/vComponent.php 2011-02-28 14:11:24.757189028 +0100 +@@ -203,7 +203,7 @@ + function RenderParameters() { + $rendered = ""; + foreach( $this->parameters AS $k => $v ) { +- $escaped = preg_replace( "/([;:\"])/", '\\\\$1', $v); ++ $escaped = preg_replace( "/([;:])/", '\\\\$1', $v); + $rendered .= sprintf( ";%s=%s", $k, $escaped ); + } + return $rendered; +@@ -235,7 +235,7 @@ + default: + $escaped = str_replace( '\\', '\\\\', $escaped); + $escaped = preg_replace( '/\r?\n/', '\\n', $escaped); +- $escaped = preg_replace( "/([,;\"])/", '\\\\$1', $escaped); ++ $escaped = preg_replace( "/([,;])/", '\\\\$1', $escaped); + } + + $property = sprintf( "%s%s:", $this->name, $this->RenderParameters() ); +@@ -800,6 +800,7 @@ + foreach( $this->components AS $v ) { $rendered .= $v->Render(); } + $rendered .= "END:$this->type\r\n"; + ++ $rendered = preg_replace('{(?<!\r)\n}', '\r\n', $rendered); + if ( $unrestricted ) $this->rendered = $rendered; + + return $rendered; |