From 03055a3444d2e825a9f4c31abac58318dc0fa743 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Mon, 23 Mar 2009 13:10:33 +0000 Subject: [PATCH 01/36] Monotone-Parent: 19411003409b1b14299b09729d662efa35865717 Monotone-Revision: 93f5621e5282201f7b9a61447d23a396e8f682a4 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-23T13:10:33 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 7 +++++++ SoObjects/Contacts/SOGoContactFolders.m | 4 +++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 61653a6cf..e573fb3fc 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2009-03-23 Wolfgang Sourdeau + + * SoObjects/Contacts/SOGoContactFolders.m ([SOGoContactFolders + -appendSystemSources]): modified the return type and returns nil, + to match the new SOGoParentFolder definition of the method. + Otherwise, a confusion is created on the stack. + 2009-03-23 Ludovic Marcotte * SoObjects/SOGo/SOGoUser.m: diff --git a/SoObjects/Contacts/SOGoContactFolders.m b/SoObjects/Contacts/SOGoContactFolders.m index b83e7bd7d..c2330347f 100644 --- a/SoObjects/Contacts/SOGoContactFolders.m +++ b/SoObjects/Contacts/SOGoContactFolders.m @@ -50,7 +50,7 @@ return [SOGoContactGCSFolder class]; } -- (void) appendSystemSources +- (NSException *) appendSystemSources { LDAPUserManager *um; NSEnumerator *sourceIDs; @@ -68,6 +68,8 @@ [currentFolder setLDAPSource: [um sourceWithID: currentSourceID]]; [subFolders setObject: currentFolder forKey: currentSourceID]; } + + return nil; } - (NSString *) defaultFolderName From 8715ec448b54ae261f7eeed7b34ac01033230e7e Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Mon, 23 Mar 2009 19:04:31 +0000 Subject: [PATCH 02/36] Monotone-Parent: 93f5621e5282201f7b9a61447d23a396e8f682a4 Monotone-Revision: 1da41bffe0d25476b6f909fd1621c5026cdf59ee Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-23T19:04:31 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 6 ++++++ SoObjects/SOGo/SOGoGCSFolder.m | 12 +++++++++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index e573fb3fc..bc719d828 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 2009-03-23 Wolfgang Sourdeau + * SoObjects/SOGo/SOGoGCSFolder.m ([SOGoGCSFolder + -subscribe:reallyDoinTheNamesOf:delegatedUsersfromMailInvitation:isMailInvitationinContext:localContext]): + when the user preferences didn't already contain a key matching + the current module name, the subscriptions would not work. We thus + create one if none exists yet. + * SoObjects/Contacts/SOGoContactFolders.m ([SOGoContactFolders -appendSystemSources]): modified the return type and returns nil, to match the new SOGoParentFolder definition of the method. diff --git a/SoObjects/SOGo/SOGoGCSFolder.m b/SoObjects/SOGo/SOGoGCSFolder.m index 8ae3a117b..2e08717ca 100644 --- a/SoObjects/SOGo/SOGoGCSFolder.m +++ b/SoObjects/SOGo/SOGoGCSFolder.m @@ -621,9 +621,6 @@ static NSArray *childRecordFields = nil; NSUserDefaults *ud; NSMutableDictionary *moduleSettings; - ud = [subscribingUser userSettings]; - moduleSettings = [ud objectForKey: [container nameInContainer]]; - if ([owner isEqualToString: [subscribingUser login]]) { [response setStatus: 403]; @@ -632,6 +629,15 @@ static NSArray *childRecordFields = nil; } else { + ud = [subscribingUser userSettings]; + moduleSettings = [ud objectForKey: [container nameInContainer]]; + if (!(moduleSettings + && [moduleSettings isKindOfClass: [NSMutableDictionary class]])) + { + moduleSettings = [NSMutableDictionary dictionary]; + [ud setObject: moduleSettings forKey: [container nameInContainer]]; + } + folderSubscription = [moduleSettings objectForKey: @"SubscribedFolders"]; if (!(folderSubscription From 48dccb23166d30fb203d973f8ad9d4ffa7bf380a Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Mon, 23 Mar 2009 21:16:25 +0000 Subject: [PATCH 03/36] Monotone-Parent: 1da41bffe0d25476b6f909fd1621c5026cdf59ee Monotone-Revision: d32a13b0eac81022df3f33f387e62593317e4287 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-23T21:16:25 Monotone-Branch: ca.inverse.sogo --- Scripts/sogo-init.d-redhat | 101 ++++++++++++++++++++++++++++++++----- 1 file changed, 89 insertions(+), 12 deletions(-) diff --git a/Scripts/sogo-init.d-redhat b/Scripts/sogo-init.d-redhat index 06d669a03..f89dddab6 100755 --- a/Scripts/sogo-init.d-redhat +++ b/Scripts/sogo-init.d-redhat @@ -30,8 +30,9 @@ # sogod Scalable OpenGroupware.org (Inverse edition) -PREFORK=3 +PREFORK=1 SOGO_ARGS="" +USER=sogo PATH=/sbin:/bin:/usr/sbin:/usr/bin @@ -44,7 +45,7 @@ fi REAL_DAEMON=sogod DAEMON=/usr/sbin/sogod -NAME=sogo +NAME=sogod DESC="Scalable OpenGroupware.Org (Inverse edition)" PIDFILE=/var/run/sogo/sogod. @@ -79,22 +80,99 @@ start() { echo $"Starting $DESC: " for ((a=1; a <= PREFORK ; a++)) do - daemon --user=sogo $DAEMON $a - echo "$DAEMON $a" + ppid="`cat ${PIDFILE}${a} 2> /dev/null`" + if [ -n "$ppid" ] + then + ppid="`ps --pid ${ppid} -o pid=`" + if [ -n "$ppid" ] + then + echo " $DAEMON $a already running. Skipped." + else + rm -f ${PIDFILE}${a} + daemon --user="$USER" "$DAEMON" $a + echo " $DAEMON $a (stale pid file removed)" + fi + else + daemon --user="$USER" "$DAEMON" $a + echo " $DAEMON $a" + fi done } stop() { echo $"Stopping $DESC: " - /usr/bin/killall -u sogo gdnc + su "$USER" -c '/usr/bin/killall gdnc >& /dev/null' + # We kill the parent processes with SIGTERM so that they + # can exit gracefully. for ((a=1; a <= PREFORK ; a++)) do - pid="`cat ${PIDFILE}${a}`" - ppid="`ps --ppid ${pid} -o pid=`" - kill -9 $pid - kill -9 $ppid + ppid="`cat ${PIDFILE}${a} 2> /dev/null`" + if [ -n "$ppid" ] + then + ppid="`ps --pid ${ppid} -o pid=`" + if [ -n "$ppid" ] + then + if kill $ppid >& /dev/null + then + echo " $DAEMON $a stopped" + fi + else + echo " $DAEMON $a not running" + fi + else + echo " $DAEMON $a not running" + fi + done + + sleep 1 + # We kill the parent and child processes with SIGKILL to make sure they + # really are shutdown, and then we remove their pidfile. + for ((a=1; a <= PREFORK ; a++)) + do + ppid="`cat ${PIDFILE}${a} 2> /dev/null`" + if [ -n "$ppid" ] + then + ppid="`ps --pid ${ppid} -o pid= 2> /dev/null`" + if [ -n "$ppid" ] + then + kill -9 $ppid >& /dev/null + pid="`ps --ppid ${ppid} -o pid= 2> /dev/null`" + if [ -n "$pid" ] + then + kill -9 $pid >& /dev/null + fi + echo " $DAEMON $a killed" + fi + fi rm -f ${PIDFILE}${a} - echo "$DAEMON $a stopped" + done +} + +restart() { + echo $"Restarting $DESC: " + su "$USER" -c '/usr/bin/killall gdnc >& /dev/null' + for ((a=1; a <= PREFORK ; a++)) + do + ppid="`cat ${PIDFILE}${a} 2> /dev/null`" + if [ -n "$ppid" ] + then + ppid="`ps --pid ${ppid} -o pid=`" + if [ -n "$ppid" ] + then + kill $ppid >& /dev/null + sleep 1 + fi + ppid="`ps --pid ${ppid} -o pid=`" + if [ -n "$ppid" ] + then + pid="`ps --ppid ${ppid} -o pid=`" + kill -9 $ppid >& /dev/null + kill -9 $pid >& /dev/null + fi + rm -f ${PIDFILE}${a} + fi + daemon --user="$USER" "$DAEMON" $a + echo " $DAEMON $a" done } @@ -106,8 +184,7 @@ case "$1" in stop ;; restart|force-reload) - stop - start + restart ;; status) status $REAL_DAEMON From 28e34ba8aa8b86043836e42c6be7f1a5ad02bfe6 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Mon, 23 Mar 2009 21:19:54 +0000 Subject: [PATCH 04/36] Monotone-Parent: d32a13b0eac81022df3f33f387e62593317e4287 Monotone-Revision: bf1f76a700dd5013f40d490b2329d5c127f21fbf Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-23T21:19:54 Monotone-Branch: ca.inverse.sogo --- Scripts/sogo-init.d-redhat | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/Scripts/sogo-init.d-redhat b/Scripts/sogo-init.d-redhat index f89dddab6..12db1c858 100755 --- a/Scripts/sogo-init.d-redhat +++ b/Scripts/sogo-init.d-redhat @@ -59,20 +59,23 @@ if [ ! -x $DAEMON ]; then exit 1 fi -if [ `/usr/bin/stat /var/run/sogo -c %U` != "sogo" ]; then - echo "/var/run/sogo is not owned by the sogo user." - exit 1 -fi +checkDir() { + directory="$1" + if [ ! -d "$directory" ] + then + echo "$directory does not exist." + exit 1 + fi -if [ `/usr/bin/stat /var/spool/sogo -c %U` != "sogo" ]; then - echo "/var/spool/sogo is not owned by the sogo user." - exit 1 -fi + if [ `/usr/bin/stat "$directory" -c %U` != "$USER" ] + then + echo "$directory is not owned by the sogo user." + exit 1 + fi +} -if [ `/usr/bin/stat /var/log/sogo -c %U` != "sogo" ]; then - echo "/var/log/sogo is not owned by the sogo user." - exit 1 -fi +checkDir /var/run/sogo +checkDir /var/spool/sogo #set -e From 71d412614913463c56d6510d64b90a66738eb787 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Mon, 23 Mar 2009 21:19:55 +0000 Subject: [PATCH 05/36] See ChangeLog Monotone-Parent: 1da41bffe0d25476b6f909fd1621c5026cdf59ee Monotone-Revision: ab9ae63478f08b1ff94c2872ca40ff73a041a9a7 Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2009-03-23T21:19:55 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 13 +++++- NEWS | 8 +++- .../Appointments/SOGoAppointmentFolder.h | 1 + .../Appointments/SOGoAppointmentFolder.m | 31 +++++++++++++ .../Appointments/SOGoAppointmentObject.m | 42 +++++++++++------- UI/WebServerResources/lori-login.jpg | Bin 7861 -> 0 bytes 6 files changed, 75 insertions(+), 20 deletions(-) delete mode 100644 UI/WebServerResources/lori-login.jpg diff --git a/ChangeLog b/ChangeLog index bc719d828..dfe5f1f99 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2009-03-23 Francis Lachapelle + + * SoObjects/Appointments/SOGoAppointmentObject.m + ([SOGoAppointmentObject -_lookupEvent:forUID:]): when looking for + an event for a specific user, we now search into all the user's + calendar folders. + + * SoObjects/Appointments/SOGoAppointmentFolder.m + ([SOGoAppointmentFolder -lookupCalendarFoldersForUID:]): new + method that returns an array of a user's calendar folders + excluding the subscriptions. + 2009-03-23 Wolfgang Sourdeau * SoObjects/SOGo/SOGoGCSFolder.m ([SOGoGCSFolder @@ -16,7 +28,6 @@ * SoObjects/SOGo/SOGoUser.m: Don't retain/release the language ivar. - 2009-03-22 Wolfgang Sourdeau * SoObjects/SOGo/SOGoUser.m ([SOGoUser -language]): cache the diff --git a/NEWS b/NEWS index 8dfb2d775..993843c9e 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,9 @@ -1.0-20090317 ------------ +1.0-2009 +-------- +- when the status of an attendee changes, the event of an organizer is now updated correctly if it doesn't reside in the personal folder + +1.0-20090317 (1.0.0) +--------------- - when double-clicking in the all-day zone (day & week views), the "All Day event" checkbox is now automatically checked - replaced the JavaScript FastInit class by the dom:loaded event of Prototype JS - also updated Prototype JS to fix issues with IE7 diff --git a/SoObjects/Appointments/SOGoAppointmentFolder.h b/SoObjects/Appointments/SOGoAppointmentFolder.h index ff7925290..66e5548f6 100644 --- a/SoObjects/Appointments/SOGoAppointmentFolder.h +++ b/SoObjects/Appointments/SOGoAppointmentFolder.h @@ -107,6 +107,7 @@ inContext: (id) _ctx; - (SOGoAppointmentFolder *) lookupCalendarFolderForUID: (NSString *) uid; +- (NSArray *) lookupCalendarFoldersForUID: (NSString *) theUID; - (NSArray *) lookupCalendarFoldersForUIDs: (NSArray *) _uids inContext: (id) _ctx; - (NSArray *) lookupFreeBusyObjectsForUIDs: (NSArray *) _uids diff --git a/SoObjects/Appointments/SOGoAppointmentFolder.m b/SoObjects/Appointments/SOGoAppointmentFolder.m index 44f6bf655..2ec5c945f 100644 --- a/SoObjects/Appointments/SOGoAppointmentFolder.m +++ b/SoObjects/Appointments/SOGoAppointmentFolder.m @@ -2406,6 +2406,37 @@ firstInstanceCalendarDateRange: (NGCalendarDateRange *) fir return (SOGoAppointmentFolder *) currentContainer; } +// +// This method returns an array containing all the calendar folders +// of a specific user, excluding her/his subscriptions. +// +- (NSArray *) lookupCalendarFoldersForUID: (NSString *) theUID +{ + NSArray *aFolders; + NSEnumerator *e; + NSMutableArray *aUserFolders; + SOGoAppointmentFolders *aParent; + SOGoFolder *aContainer, *aFolder; + + aUserFolders = [NSMutableArray arrayWithCapacity: 16]; + aContainer = [[container container] container]; + aContainer = [aContainer lookupName: theUID + inContext: context + acquire: NO]; + aParent = [aContainer lookupName: @"Calendar" + inContext: context + acquire: NO]; + aFolders = [aParent subFolders]; + e = [aFolders objectEnumerator]; + while ( (aFolder = [e nextObject]) ) + { + if (![aFolder isSubscription]) + [aUserFolders addObject: aFolder]; + } + + return aUserFolders; +} + - (NSArray *) lookupCalendarFoldersForUIDs: (NSArray *) _uids inContext: (id)_ctx { diff --git a/SoObjects/Appointments/SOGoAppointmentObject.m b/SoObjects/Appointments/SOGoAppointmentObject.m index 740d5922e..7c6758eca 100644 --- a/SoObjects/Appointments/SOGoAppointmentObject.m +++ b/SoObjects/Appointments/SOGoAppointmentObject.m @@ -173,24 +173,31 @@ { SOGoAppointmentFolder *folder; SOGoAppointmentObject *object; + NSArray *folders; + NSEnumerator *e; NSString *possibleName; -#warning Should call lookupCalendarFoldersForUIDs to search among all folders - folder = [container lookupCalendarFolderForUID: uid]; - object = [folder lookupName: nameInContainer - inContext: context acquire: NO]; - if ([object isKindOfClass: [NSException class]]) + object = nil; + folders = [container lookupCalendarFoldersForUID: uid]; + e = [folders objectEnumerator]; + while ( object == nil && (folder = [e nextObject]) ) { - possibleName = [folder resourceNameForEventUID: eventUID]; - if (possibleName) + object = [folder lookupName: nameInContainer + inContext: context + acquire: NO]; + if ([object isKindOfClass: [NSException class]]) { - object = [folder lookupName: possibleName - inContext: context acquire: NO]; - if ([object isKindOfClass: [NSException class]]) + possibleName = [folder resourceNameForEventUID: eventUID]; + if (possibleName) + { + object = [folder lookupName: possibleName + inContext: context acquire: NO]; + if ([object isKindOfClass: [NSException class]]) + object = nil; + } + else object = nil; } - else - object = nil; } if (!object) @@ -281,8 +288,9 @@ NSCalendarDate *currentId; NSString *calendarContent; int max, count; - -#warning Should call lookupCalendarFoldersForUIDs to search among all folders + + // Invitations are always written to the personal folder; it's not necessay + // to look into all folders of the user folder = [container lookupCalendarFolderForUID: theUID]; object = [folder lookupName: nameInContainer inContext: context acquire: NO]; @@ -293,7 +301,7 @@ else { calendar = [object calendar: NO secure: NO]; - + // If recurrenceId is defined, remove the occurence from // the repeating event. occurences = [calendar events]; @@ -314,9 +322,9 @@ // Add an date exception. event = (iCalRepeatableEntityObject*)[calendar firstChildWithTag: [object componentTag]]; [event addToExceptionDates: recurrenceId]; - + [event increaseSequence]; - + // We generate the updated iCalendar file and we save it // in the database. calendarContent = [calendar versitString]; diff --git a/UI/WebServerResources/lori-login.jpg b/UI/WebServerResources/lori-login.jpg deleted file mode 100644 index 7ab42d121e19921b798c31fad3efe3ccee1cb29b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7861 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 Date: Tue, 24 Mar 2009 00:07:21 +0000 Subject: [PATCH 06/36] Slightly improved the documentation wrt SOGo Update Server. Monotone-Parent: cb528516476836d7575692fe4e1cd2380c58f2d9 Monotone-Revision: 2dd0d99b9f9830e90d6186f0b7bd8f21625bdfd5 Monotone-Author: ludovic@Sophos.ca Monotone-Date: 2009-03-24T00:07:21 Monotone-Branch: ca.inverse.sogo --- ...SOGo Mozilla Thunderbird Configuration.odt | Bin 19940 -> 19969 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/Documentation/SOGo Mozilla Thunderbird Configuration.odt b/Documentation/SOGo Mozilla Thunderbird Configuration.odt index 339376f981832c1b2857c11e9ae7dcf3284f3ce7..fc3e80f04c91375b767645b8de1264f46661803e 100644 GIT binary patch delta 8780 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 Cua!Um delta 8874 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

7^nYvO|HEv`|A#?P_|N=?mICiz z75E>a0B0*O|D{J2i1<}WAt2m6d>t&^S$!NGROBI{up$0u1myoJ$3N-;|Nl;ZKm>wG z6!FOZRTt{+wWe(h2ne!&w&DLTrV6aCNcWfde?J}he=&35EJdQf3<$&5OcN3UVh8{M Tf%Cr@RPZlFdbkqVf0O?Q#0{~| From 897fdccf52f28163211b0152f99fffd289ebc15f Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 13:41:44 +0000 Subject: [PATCH 07/36] Monotone-Parent: cb528516476836d7575692fe4e1cd2380c58f2d9 Monotone-Revision: 478e5eec344abe2e6946e22b5c853865f80a2b66 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T13:41:44 Monotone-Branch: ca.inverse.sogo --- SOPE/sope-gsmake2.diff | 252 +++++++-------- ...et-r1630.diff => sope-patchset-r1632.diff} | 298 ++++++++++-------- 2 files changed, 291 insertions(+), 259 deletions(-) rename SOPE/{sope-patchset-r1630.diff => sope-patchset-r1632.diff} (93%) diff --git a/SOPE/sope-gsmake2.diff b/SOPE/sope-gsmake2.diff index 0e55cdc68..a2172e35f 100644 --- a/SOPE/sope-gsmake2.diff +++ b/SOPE/sope-gsmake2.diff @@ -1,6 +1,6 @@ Index: configure =================================================================== ---- configure (révision 1608) +--- configure (révision 1632) +++ configure (copie de travail) @@ -1,4 +1,4 @@ -#!/bin/bash @@ -316,7 +316,7 @@ Index: configure fi Index: sope-ldap/samples/GNUmakefile =================================================================== ---- sope-ldap/samples/GNUmakefile (révision 1608) +--- sope-ldap/samples/GNUmakefile (révision 1632) +++ sope-ldap/samples/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -345,7 +345,7 @@ Index: sope-ldap/samples/GNUmakefile --include fhs.make Index: sope-ldap/NGLdap/GNUmakefile =================================================================== ---- sope-ldap/NGLdap/GNUmakefile (révision 1608) +--- sope-ldap/NGLdap/GNUmakefile (révision 1632) +++ sope-ldap/NGLdap/GNUmakefile (copie de travail) @@ -1,11 +1,9 @@ # GNUstep makefile @@ -386,7 +386,7 @@ Index: sope-ldap/NGLdap/GNUmakefile --include fhs.make Index: sope-ldap/GNUmakefile =================================================================== ---- sope-ldap/GNUmakefile (révision 1608) +--- sope-ldap/GNUmakefile (révision 1632) +++ sope-ldap/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -398,7 +398,7 @@ Index: sope-ldap/GNUmakefile PACKAGE_NAME=sope-ldap Index: GNUmakefile =================================================================== ---- GNUmakefile (révision 1608) +--- GNUmakefile (révision 1632) +++ GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -419,7 +419,7 @@ Index: GNUmakefile distclean :: Index: sope-gdl1/PostgreSQL/GNUmakefile.preamble =================================================================== ---- sope-gdl1/PostgreSQL/GNUmakefile.preamble (révision 1608) +--- sope-gdl1/PostgreSQL/GNUmakefile.preamble (révision 1632) +++ sope-gdl1/PostgreSQL/GNUmakefile.preamble (copie de travail) @@ -27,7 +27,7 @@ ifeq ($(frameworks),yes) @@ -432,7 +432,7 @@ Index: sope-gdl1/PostgreSQL/GNUmakefile.preamble Index: sope-gdl1/PostgreSQL/GNUmakefile =================================================================== ---- sope-gdl1/PostgreSQL/GNUmakefile (révision 1608) +--- sope-gdl1/PostgreSQL/GNUmakefile (révision 1632) +++ sope-gdl1/PostgreSQL/GNUmakefile (copie de travail) @@ -22,7 +22,7 @@ # If not, write to the Free Software Foundation, @@ -450,7 +450,7 @@ Index: sope-gdl1/PostgreSQL/GNUmakefile -include fhs.make Index: sope-gdl1/SQLite3/GNUmakefile.preamble =================================================================== ---- sope-gdl1/SQLite3/GNUmakefile.preamble (révision 1608) +--- sope-gdl1/SQLite3/GNUmakefile.preamble (révision 1632) +++ sope-gdl1/SQLite3/GNUmakefile.preamble (copie de travail) @@ -27,7 +27,7 @@ ifeq ($(frameworks),yes) @@ -463,7 +463,7 @@ Index: sope-gdl1/SQLite3/GNUmakefile.preamble Index: sope-gdl1/SQLite3/GNUmakefile =================================================================== ---- sope-gdl1/SQLite3/GNUmakefile (révision 1608) +--- sope-gdl1/SQLite3/GNUmakefile (révision 1632) +++ sope-gdl1/SQLite3/GNUmakefile (copie de travail) @@ -22,7 +22,7 @@ # If not, write to the Free Software Foundation, @@ -481,7 +481,7 @@ Index: sope-gdl1/SQLite3/GNUmakefile -include fhs.make Index: sope-gdl1/FrontBase2/GNUmakefile =================================================================== ---- sope-gdl1/FrontBase2/GNUmakefile (révision 1608) +--- sope-gdl1/FrontBase2/GNUmakefile (révision 1632) +++ sope-gdl1/FrontBase2/GNUmakefile (copie de travail) @@ -22,7 +22,7 @@ # If not, write to the Free Software Foundation, @@ -512,7 +512,7 @@ Index: sope-gdl1/FrontBase2/GNUmakefile BUNDLE_EXTENSION = .gdladaptor Index: sope-gdl1/MySQL/GNUmakefile.preamble =================================================================== ---- sope-gdl1/MySQL/GNUmakefile.preamble (révision 1608) +--- sope-gdl1/MySQL/GNUmakefile.preamble (révision 1632) +++ sope-gdl1/MySQL/GNUmakefile.preamble (copie de travail) @@ -27,7 +27,7 @@ ifeq ($(frameworks),yes) @@ -525,7 +525,7 @@ Index: sope-gdl1/MySQL/GNUmakefile.preamble Index: sope-gdl1/MySQL/GNUmakefile =================================================================== ---- sope-gdl1/MySQL/GNUmakefile (révision 1608) +--- sope-gdl1/MySQL/GNUmakefile (révision 1632) +++ sope-gdl1/MySQL/GNUmakefile (copie de travail) @@ -22,7 +22,7 @@ # If not, write to the Free Software Foundation, @@ -543,7 +543,7 @@ Index: sope-gdl1/MySQL/GNUmakefile -include fhs.make Index: sope-gdl1/GNUmakefile =================================================================== ---- sope-gdl1/GNUmakefile (révision 1608) +--- sope-gdl1/GNUmakefile (révision 1632) +++ sope-gdl1/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -555,7 +555,7 @@ Index: sope-gdl1/GNUmakefile PACKAGE_NAME=sope-gdl1 Index: sope-gdl1/GDLAccess/GNUmakefile.preamble =================================================================== ---- sope-gdl1/GDLAccess/GNUmakefile.preamble (révision 1608) +--- sope-gdl1/GDLAccess/GNUmakefile.preamble (révision 1632) +++ sope-gdl1/GDLAccess/GNUmakefile.preamble (copie de travail) @@ -21,17 +21,12 @@ -I$(SOPE_ROOT)/sope-core/NGExtensions/ @@ -579,7 +579,7 @@ Index: sope-gdl1/GDLAccess/GNUmakefile.preamble libGDLAccess_LIBRARIES_DEPEND_UPON += -lEOControl Index: sope-gdl1/GDLAccess/GNUmakefile =================================================================== ---- sope-gdl1/GDLAccess/GNUmakefile (révision 1608) +--- sope-gdl1/GDLAccess/GNUmakefile (révision 1632) +++ sope-gdl1/GDLAccess/GNUmakefile (copie de travail) @@ -1,12 +1,10 @@ # GNUstep makefile @@ -631,7 +631,7 @@ Index: sope-gdl1/GDLAccess/GNUmakefile -include fhs.make Index: sope-gdl1/GDLAccess/EOAdaptor.h =================================================================== ---- sope-gdl1/GDLAccess/EOAdaptor.h (révision 1608) +--- sope-gdl1/GDLAccess/EOAdaptor.h (révision 1632) +++ sope-gdl1/GDLAccess/EOAdaptor.h (copie de travail) @@ -62,11 +62,14 @@ + (id)adaptorWithModel:(EOModel *)aModel; @@ -650,7 +650,7 @@ Index: sope-gdl1/GDLAccess/EOAdaptor.h - (NSDictionary*)connectionDictionary; Index: sope-gdl1/GDLAccess/EOAdaptor.m =================================================================== ---- sope-gdl1/GDLAccess/EOAdaptor.m (révision 1608) +--- sope-gdl1/GDLAccess/EOAdaptor.m (révision 1632) +++ sope-gdl1/GDLAccess/EOAdaptor.m (copie de travail) @@ -53,14 +53,23 @@ + (NSArray *)adaptorSearchPathes { @@ -718,7 +718,7 @@ Index: sope-gdl1/GDLAccess/EOAdaptor.m "Database URLs" Index: sope-gdl1/GDLAccess/FoundationExt/GNUmakefile =================================================================== ---- sope-gdl1/GDLAccess/FoundationExt/GNUmakefile (révision 1608) +--- sope-gdl1/GDLAccess/FoundationExt/GNUmakefile (révision 1632) +++ sope-gdl1/GDLAccess/FoundationExt/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -730,7 +730,7 @@ Index: sope-gdl1/GDLAccess/FoundationExt/GNUmakefile include ../Version Index: sope-gdl1/GDLAccess/common.h =================================================================== ---- sope-gdl1/GDLAccess/common.h (révision 1608) +--- sope-gdl1/GDLAccess/common.h (révision 1632) +++ sope-gdl1/GDLAccess/common.h (copie de travail) @@ -42,7 +42,7 @@ #import @@ -743,7 +743,7 @@ Index: sope-gdl1/GDLAccess/common.h Index: sope-gdl1/Oracle8/GNUmakefile =================================================================== ---- sope-gdl1/Oracle8/GNUmakefile (révision 1608) +--- sope-gdl1/Oracle8/GNUmakefile (révision 1632) +++ sope-gdl1/Oracle8/GNUmakefile (copie de travail) @@ -19,7 +19,7 @@ # License along with this library; if not, write to the Free Software @@ -765,7 +765,7 @@ Index: sope-gdl1/Oracle8/GNUmakefile Oracle8_OBJC_FILES = \ Index: sope-mime/NGImap4/GNUmakefile =================================================================== ---- sope-mime/NGImap4/GNUmakefile (révision 1608) +--- sope-mime/NGImap4/GNUmakefile (révision 1632) +++ sope-mime/NGImap4/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -789,7 +789,7 @@ Index: sope-mime/NGImap4/GNUmakefile else Index: sope-mime/samples/GNUmakefile =================================================================== ---- sope-mime/samples/GNUmakefile (révision 1608) +--- sope-mime/samples/GNUmakefile (révision 1632) +++ sope-mime/samples/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -827,7 +827,7 @@ Index: sope-mime/samples/GNUmakefile --include fhs.make Index: sope-mime/NGMail/GNUmakefile =================================================================== ---- sope-mime/NGMail/GNUmakefile (révision 1608) +--- sope-mime/NGMail/GNUmakefile (révision 1632) +++ sope-mime/NGMail/GNUmakefile (copie de travail) @@ -1,10 +1,8 @@ # GNUstep makefile @@ -853,7 +853,7 @@ Index: sope-mime/NGMail/GNUmakefile else Index: sope-mime/GNUmakefile =================================================================== ---- sope-mime/GNUmakefile (révision 1608) +--- sope-mime/GNUmakefile (révision 1632) +++ sope-mime/GNUmakefile (copie de travail) @@ -1,11 +1,9 @@ # GNUstep makefile @@ -898,7 +898,7 @@ Index: sope-mime/GNUmakefile # package Index: sope-mime/NGMime/GNUmakefile.preamble =================================================================== ---- sope-mime/NGMime/GNUmakefile.preamble (révision 1608) +--- sope-mime/NGMime/GNUmakefile.preamble (révision 1632) +++ sope-mime/NGMime/GNUmakefile.preamble (copie de travail) @@ -5,6 +5,15 @@ -DLIBRARY_MINOR_VERSION=${MINOR_VERSION} \ @@ -918,7 +918,7 @@ Index: sope-mime/NGMime/GNUmakefile.preamble -I../../sope-core/NGStreams/ \ Index: sope-mime/NGMime/GNUmakefile =================================================================== ---- sope-mime/NGMime/GNUmakefile (révision 1608) +--- sope-mime/NGMime/GNUmakefile (révision 1632) +++ sope-mime/NGMime/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -939,7 +939,7 @@ Index: sope-mime/NGMime/GNUmakefile -include GNUmakefile.postamble Index: sope-core/NGExtensions/NGExtensions/NGResourceLocator.h =================================================================== ---- sope-core/NGExtensions/NGExtensions/NGResourceLocator.h (révision 1608) +--- sope-core/NGExtensions/NGExtensions/NGResourceLocator.h (révision 1632) +++ sope-core/NGExtensions/NGExtensions/NGResourceLocator.h (copie de travail) @@ -52,23 +52,54 @@ int reserved:29; @@ -999,7 +999,7 @@ Index: sope-core/NGExtensions/NGExtensions/NGResourceLocator.h Index: sope-core/NGExtensions/NGBundleManager.m =================================================================== ---- sope-core/NGExtensions/NGBundleManager.m (révision 1608) +--- sope-core/NGExtensions/NGBundleManager.m (révision 1632) +++ sope-core/NGExtensions/NGBundleManager.m (copie de travail) @@ -332,10 +332,7 @@ } @@ -1036,7 +1036,7 @@ Index: sope-core/NGExtensions/NGBundleManager.m - (void)_setupBundleSearchPathes { Index: sope-core/NGExtensions/FdExt.subproj/GNUmakefile =================================================================== ---- sope-core/NGExtensions/FdExt.subproj/GNUmakefile (révision 1608) +--- sope-core/NGExtensions/FdExt.subproj/GNUmakefile (révision 1632) +++ sope-core/NGExtensions/FdExt.subproj/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1048,7 +1048,7 @@ Index: sope-core/NGExtensions/FdExt.subproj/GNUmakefile SUBPROJECT_NAME = FdExt Index: sope-core/NGExtensions/XmlExt.subproj/GNUmakefile =================================================================== ---- sope-core/NGExtensions/XmlExt.subproj/GNUmakefile (révision 1608) +--- sope-core/NGExtensions/XmlExt.subproj/GNUmakefile (révision 1632) +++ sope-core/NGExtensions/XmlExt.subproj/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1060,7 +1060,7 @@ Index: sope-core/NGExtensions/XmlExt.subproj/GNUmakefile SUBPROJECT_NAME = XmlExt Index: sope-core/NGExtensions/EOExt.subproj/GNUmakefile =================================================================== ---- sope-core/NGExtensions/EOExt.subproj/GNUmakefile (révision 1608) +--- sope-core/NGExtensions/EOExt.subproj/GNUmakefile (révision 1632) +++ sope-core/NGExtensions/EOExt.subproj/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1072,7 +1072,7 @@ Index: sope-core/NGExtensions/EOExt.subproj/GNUmakefile SUBPROJECT_NAME = EOExt Index: sope-core/NGExtensions/GNUmakefile =================================================================== ---- sope-core/NGExtensions/GNUmakefile (révision 1608) +--- sope-core/NGExtensions/GNUmakefile (révision 1632) +++ sope-core/NGExtensions/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1108,7 +1108,7 @@ Index: sope-core/NGExtensions/GNUmakefile --include fhs.make Index: sope-core/NGExtensions/NGResourceLocator.m =================================================================== ---- sope-core/NGExtensions/NGResourceLocator.m (révision 1608) +--- sope-core/NGExtensions/NGResourceLocator.m (révision 1632) +++ sope-core/NGExtensions/NGResourceLocator.m (copie de travail) @@ -43,7 +43,11 @@ return self; @@ -1166,7 +1166,7 @@ Index: sope-core/NGExtensions/NGResourceLocator.m e = ([self->fhsSubPath length] > 0) Index: sope-core/NGExtensions/NGLogging.subproj/GNUmakefile =================================================================== ---- sope-core/NGExtensions/NGLogging.subproj/GNUmakefile (révision 1608) +--- sope-core/NGExtensions/NGLogging.subproj/GNUmakefile (révision 1632) +++ sope-core/NGExtensions/NGLogging.subproj/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1178,7 +1178,7 @@ Index: sope-core/NGExtensions/NGLogging.subproj/GNUmakefile SUBPROJECT_NAME = NGLogging Index: sope-core/NGExtensions/NGRuleEngine.subproj/GNUmakefile =================================================================== ---- sope-core/NGExtensions/NGRuleEngine.subproj/GNUmakefile (révision 1608) +--- sope-core/NGExtensions/NGRuleEngine.subproj/GNUmakefile (révision 1632) +++ sope-core/NGExtensions/NGRuleEngine.subproj/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1190,7 +1190,7 @@ Index: sope-core/NGExtensions/NGRuleEngine.subproj/GNUmakefile SUBPROJECT_NAME = NGRuleEngine Index: sope-core/GNUmakefile =================================================================== ---- sope-core/GNUmakefile (révision 1608) +--- sope-core/GNUmakefile (révision 1632) +++ sope-core/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1208,7 +1208,7 @@ Index: sope-core/GNUmakefile + ../maintenance/make-osxpkg.sh $(PACKAGE_NAME) Index: sope-core/NGStreams/GNUmakefile.preamble =================================================================== ---- sope-core/NGStreams/GNUmakefile.preamble (révision 1608) +--- sope-core/NGStreams/GNUmakefile.preamble (révision 1632) +++ sope-core/NGStreams/GNUmakefile.preamble (copie de travail) @@ -38,7 +38,11 @@ endif @@ -1224,7 +1224,7 @@ Index: sope-core/NGStreams/GNUmakefile.preamble endif Index: sope-core/NGStreams/GNUmakefile =================================================================== ---- sope-core/NGStreams/GNUmakefile (révision 1608) +--- sope-core/NGStreams/GNUmakefile (révision 1632) +++ sope-core/NGStreams/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1260,7 +1260,7 @@ Index: sope-core/NGStreams/GNUmakefile --include fhs.make Index: sope-core/samples/GNUmakefile =================================================================== ---- sope-core/samples/GNUmakefile (révision 1608) +--- sope-core/samples/GNUmakefile (révision 1632) +++ sope-core/samples/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1277,7 +1277,7 @@ Index: sope-core/samples/GNUmakefile --include fhs.make Index: sope-core/EOControl/GNUmakefile =================================================================== ---- sope-core/EOControl/GNUmakefile (révision 1608) +--- sope-core/EOControl/GNUmakefile (révision 1632) +++ sope-core/EOControl/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1313,7 +1313,7 @@ Index: sope-core/EOControl/GNUmakefile --include fhs.make Index: sope-core/common.make =================================================================== ---- sope-core/common.make (révision 1608) +--- sope-core/common.make (révision 1632) +++ sope-core/common.make (copie de travail) @@ -6,8 +6,6 @@ include $(SKYROOT)/Version @@ -1326,7 +1326,7 @@ Index: sope-core/common.make ADDITIONAL_CPPFLAGS += -D_REENTRANT=1 Index: sope-core/EOCoreData/GNUmakefile =================================================================== ---- sope-core/EOCoreData/GNUmakefile (révision 1608) +--- sope-core/EOCoreData/GNUmakefile (révision 1632) +++ sope-core/EOCoreData/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1362,7 +1362,7 @@ Index: sope-core/EOCoreData/GNUmakefile --include fhs.make Index: sopex/GNUmakefile =================================================================== ---- sopex/GNUmakefile (révision 1608) +--- sopex/GNUmakefile (révision 1632) +++ sopex/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1374,7 +1374,7 @@ Index: sopex/GNUmakefile ifeq ($(FOUNDATION_LIB),apple) Index: sopex/SOPEX/GNUmakefile =================================================================== ---- sopex/SOPEX/GNUmakefile (révision 1608) +--- sopex/SOPEX/GNUmakefile (révision 1632) +++ sopex/SOPEX/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1386,7 +1386,7 @@ Index: sopex/SOPEX/GNUmakefile Index: xmlrpc_call/GNUmakefile =================================================================== ---- xmlrpc_call/GNUmakefile (révision 1608) +--- xmlrpc_call/GNUmakefile (révision 1632) +++ xmlrpc_call/GNUmakefile (copie de travail) @@ -1,10 +1,11 @@ # GNUstep makefile @@ -1411,7 +1411,7 @@ Index: xmlrpc_call/GNUmakefile # do not build a pkg just for this tool Index: xmlrpc_call/GNUmakefile.preamble =================================================================== ---- xmlrpc_call/GNUmakefile.preamble (révision 1608) +--- xmlrpc_call/GNUmakefile.preamble (révision 1632) +++ xmlrpc_call/GNUmakefile.preamble (copie de travail) @@ -1,5 +1,6 @@ # compilation settings @@ -1440,7 +1440,7 @@ Index: xmlrpc_call/GNUmakefile.preamble endif Index: sope-xml/libxmlSAXDriver/GNUmakefile =================================================================== ---- sope-xml/libxmlSAXDriver/GNUmakefile (révision 1608) +--- sope-xml/libxmlSAXDriver/GNUmakefile (révision 1632) +++ sope-xml/libxmlSAXDriver/GNUmakefile (copie de travail) @@ -1,13 +1,13 @@ # GNUstep makefile @@ -1465,7 +1465,7 @@ Index: sope-xml/libxmlSAXDriver/GNUmakefile --include fhs.make Index: sope-xml/DOM/GNUmakefile.preamble =================================================================== ---- sope-xml/DOM/GNUmakefile.preamble (révision 1608) +--- sope-xml/DOM/GNUmakefile.preamble (révision 1632) +++ sope-xml/DOM/GNUmakefile.preamble (copie de travail) @@ -1,10 +1,13 @@ # compilation settings @@ -1485,7 +1485,7 @@ Index: sope-xml/DOM/GNUmakefile.preamble Index: sope-xml/DOM/GNUmakefile =================================================================== ---- sope-xml/DOM/GNUmakefile (révision 1608) +--- sope-xml/DOM/GNUmakefile (révision 1632) +++ sope-xml/DOM/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1511,7 +1511,7 @@ Index: sope-xml/DOM/GNUmakefile --include fhs.make Index: sope-xml/ChangeLogSaxDriver/GNUmakefile =================================================================== ---- sope-xml/ChangeLogSaxDriver/GNUmakefile (révision 1608) +--- sope-xml/ChangeLogSaxDriver/GNUmakefile (révision 1632) +++ sope-xml/ChangeLogSaxDriver/GNUmakefile (copie de travail) @@ -1,13 +1,13 @@ # GNUstep makefile @@ -1536,7 +1536,7 @@ Index: sope-xml/ChangeLogSaxDriver/GNUmakefile --include fhs.make Index: sope-xml/GNUmakefile =================================================================== ---- sope-xml/GNUmakefile (révision 1608) +--- sope-xml/GNUmakefile (révision 1632) +++ sope-xml/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1548,7 +1548,7 @@ Index: sope-xml/GNUmakefile PACKAGE_NAME=sope-xml Index: sope-xml/SaxObjC/SaxXMLReaderFactory.m =================================================================== ---- sope-xml/SaxObjC/SaxXMLReaderFactory.m (révision 1608) +--- sope-xml/SaxObjC/SaxXMLReaderFactory.m (révision 1632) +++ sope-xml/SaxObjC/SaxXMLReaderFactory.m (copie de travail) @@ -137,11 +137,19 @@ @@ -1594,7 +1594,7 @@ Index: sope-xml/SaxObjC/SaxXMLReaderFactory.m #endif Index: sope-xml/SaxObjC/SaxObjectModel.h =================================================================== ---- sope-xml/SaxObjC/SaxObjectModel.h (révision 1608) +--- sope-xml/SaxObjC/SaxObjectModel.h (révision 1632) +++ sope-xml/SaxObjC/SaxObjectModel.h (copie de travail) @@ -34,6 +34,7 @@ @@ -1606,7 +1606,7 @@ Index: sope-xml/SaxObjC/SaxObjectModel.h Index: sope-xml/SaxObjC/SaxObjectModel.m =================================================================== ---- sope-xml/SaxObjC/SaxObjectModel.m (révision 1608) +--- sope-xml/SaxObjC/SaxObjectModel.m (révision 1632) +++ sope-xml/SaxObjC/SaxObjectModel.m (copie de travail) @@ -67,12 +67,12 @@ if (searchPathes == nil) { @@ -1652,7 +1652,7 @@ Index: sope-xml/SaxObjC/SaxObjectModel.m NSEnumerator *pathes; Index: sope-xml/SaxObjC/GNUmakefile.preamble =================================================================== ---- sope-xml/SaxObjC/GNUmakefile.preamble (révision 1608) +--- sope-xml/SaxObjC/GNUmakefile.preamble (révision 1632) +++ sope-xml/SaxObjC/GNUmakefile.preamble (copie de travail) @@ -1,9 +1,12 @@ # compilation settings @@ -1682,7 +1682,7 @@ Index: sope-xml/SaxObjC/GNUmakefile.preamble # Apple Index: sope-xml/SaxObjC/GNUmakefile =================================================================== ---- sope-xml/SaxObjC/GNUmakefile (révision 1608) +--- sope-xml/SaxObjC/GNUmakefile (révision 1632) +++ sope-xml/SaxObjC/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1708,7 +1708,7 @@ Index: sope-xml/SaxObjC/GNUmakefile --include fhs.make Index: sope-xml/common.make =================================================================== ---- sope-xml/common.make (révision 1608) +--- sope-xml/common.make (révision 1632) +++ sope-xml/common.make (copie de travail) @@ -1,13 +1,7 @@ # GNUstep makefile @@ -1726,7 +1726,7 @@ Index: sope-xml/common.make ADDITIONAL_INCLUDE_DIRS += -I.. Index: sope-xml/samples/PlistSaxDriver/GNUmakefile =================================================================== ---- sope-xml/samples/PlistSaxDriver/GNUmakefile (révision 1608) +--- sope-xml/samples/PlistSaxDriver/GNUmakefile (révision 1632) +++ sope-xml/samples/PlistSaxDriver/GNUmakefile (copie de travail) @@ -1,11 +1,11 @@ # GNUstep Makefile @@ -1744,7 +1744,7 @@ Index: sope-xml/samples/PlistSaxDriver/GNUmakefile PlistSaxDriver.m Index: sope-xml/samples/GNUmakefile =================================================================== ---- sope-xml/samples/GNUmakefile (révision 1608) +--- sope-xml/samples/GNUmakefile (révision 1632) +++ sope-xml/samples/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1778,7 +1778,7 @@ Index: sope-xml/samples/GNUmakefile --include fhs.make Index: sope-xml/samples/GNUmakefile.preamble =================================================================== ---- sope-xml/samples/GNUmakefile.preamble (révision 1608) +--- sope-xml/samples/GNUmakefile.preamble (révision 1632) +++ sope-xml/samples/GNUmakefile.preamble (copie de travail) @@ -1,5 +1,6 @@ # compilation settings @@ -1800,7 +1800,7 @@ Index: sope-xml/samples/GNUmakefile.preamble endif Index: sope-xml/XmlRpc/GNUmakefile.preamble =================================================================== ---- sope-xml/XmlRpc/GNUmakefile.preamble (révision 1608) +--- sope-xml/XmlRpc/GNUmakefile.preamble (révision 1632) +++ sope-xml/XmlRpc/GNUmakefile.preamble (copie de travail) @@ -1,10 +1,13 @@ # compilation settings @@ -1820,7 +1820,7 @@ Index: sope-xml/XmlRpc/GNUmakefile.preamble Index: sope-xml/XmlRpc/GNUmakefile =================================================================== ---- sope-xml/XmlRpc/GNUmakefile (révision 1608) +--- sope-xml/XmlRpc/GNUmakefile (révision 1632) +++ sope-xml/XmlRpc/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1846,7 +1846,7 @@ Index: sope-xml/XmlRpc/GNUmakefile --include fhs.make Index: sope-xml/STXSaxDriver/ExtraSTX/GNUmakefile =================================================================== ---- sope-xml/STXSaxDriver/ExtraSTX/GNUmakefile (révision 1608) +--- sope-xml/STXSaxDriver/ExtraSTX/GNUmakefile (révision 1632) +++ sope-xml/STXSaxDriver/ExtraSTX/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1858,7 +1858,7 @@ Index: sope-xml/STXSaxDriver/ExtraSTX/GNUmakefile SUBPROJECT_NAME = ExtraSTX Index: sope-xml/STXSaxDriver/GNUmakefile =================================================================== ---- sope-xml/STXSaxDriver/GNUmakefile (révision 1608) +--- sope-xml/STXSaxDriver/GNUmakefile (révision 1632) +++ sope-xml/STXSaxDriver/GNUmakefile (copie de travail) @@ -1,13 +1,13 @@ # GNUstep makefile @@ -1883,7 +1883,7 @@ Index: sope-xml/STXSaxDriver/GNUmakefile --include fhs.make Index: sope-xml/STXSaxDriver/Model/GNUmakefile =================================================================== ---- sope-xml/STXSaxDriver/Model/GNUmakefile (révision 1608) +--- sope-xml/STXSaxDriver/Model/GNUmakefile (révision 1632) +++ sope-xml/STXSaxDriver/Model/GNUmakefile (copie de travail) @@ -6,7 +6,7 @@ # Date: 24 November 2003 @@ -1896,7 +1896,7 @@ Index: sope-xml/STXSaxDriver/Model/GNUmakefile SUBPROJECT_NAME = Model Index: sope-xml/pyxSAXDriver/GNUmakefile =================================================================== ---- sope-xml/pyxSAXDriver/GNUmakefile (révision 1608) +--- sope-xml/pyxSAXDriver/GNUmakefile (révision 1632) +++ sope-xml/pyxSAXDriver/GNUmakefile (copie de travail) @@ -1,17 +1,16 @@ # GNUstep makefile @@ -1920,7 +1920,7 @@ Index: sope-xml/pyxSAXDriver/GNUmakefile --include fhs.make Index: sope-appserver/GNUmakefile =================================================================== ---- sope-appserver/GNUmakefile (révision 1608) +--- sope-appserver/GNUmakefile (révision 1632) +++ sope-appserver/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -1930,17 +1930,7 @@ Index: sope-appserver/GNUmakefile include $(GNUSTEP_MAKEFILES)/common.make PACKAGE_NAME=sope-appserver -@@ -13,7 +13,8 @@ - WOXML \ - SoOFS \ - NGXmlRpc \ -- WEPrototype -+ WEPrototype \ -+ mod_ngobjweb - - - ifeq ($(frameworks),yes) -@@ -38,4 +39,4 @@ +@@ -38,4 +38,4 @@ # package macosx-pkg :: all @@ -1948,7 +1938,7 @@ Index: sope-appserver/GNUmakefile + ../maintenance/make-osxpkg.sh $(PACKAGE_NAME) Index: sope-appserver/SoOFS/GNUmakefile.preamble =================================================================== ---- sope-appserver/SoOFS/GNUmakefile.preamble (révision 1608) +--- sope-appserver/SoOFS/GNUmakefile.preamble (révision 1632) +++ sope-appserver/SoOFS/GNUmakefile.preamble (copie de travail) @@ -76,17 +76,9 @@ $(foreach dir,$(DEP_DIRS),-F$(GNUSTEP_BUILD_DIR)/$(dir)) @@ -1979,7 +1969,7 @@ Index: sope-appserver/SoOFS/GNUmakefile.preamble endif Index: sope-appserver/SoOFS/GNUmakefile =================================================================== ---- sope-appserver/SoOFS/GNUmakefile (révision 1608) +--- sope-appserver/SoOFS/GNUmakefile (révision 1632) +++ sope-appserver/SoOFS/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2029,7 +2019,7 @@ Index: sope-appserver/SoOFS/GNUmakefile --include fhs.make Index: sope-appserver/NGXmlRpc/GNUmakefile =================================================================== ---- sope-appserver/NGXmlRpc/GNUmakefile (révision 1608) +--- sope-appserver/NGXmlRpc/GNUmakefile (révision 1632) +++ sope-appserver/NGXmlRpc/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2066,7 +2056,7 @@ Index: sope-appserver/NGXmlRpc/GNUmakefile --include fhs.make Index: sope-appserver/WEExtensions/GNUmakefile.preamble =================================================================== ---- sope-appserver/WEExtensions/GNUmakefile.preamble (révision 1608) +--- sope-appserver/WEExtensions/GNUmakefile.preamble (révision 1632) +++ sope-appserver/WEExtensions/GNUmakefile.preamble (copie de travail) @@ -21,7 +21,8 @@ cp ../bundle-info.plist .) @@ -2080,7 +2070,7 @@ Index: sope-appserver/WEExtensions/GNUmakefile.preamble Index: sope-appserver/WEExtensions/GNUmakefile =================================================================== ---- sope-appserver/WEExtensions/GNUmakefile (révision 1608) +--- sope-appserver/WEExtensions/GNUmakefile (révision 1632) +++ sope-appserver/WEExtensions/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2116,7 +2106,7 @@ Index: sope-appserver/WEExtensions/GNUmakefile --include fhs.make Index: sope-appserver/WEExtensions/WEResourceManager.m =================================================================== ---- sope-appserver/WEExtensions/WEResourceManager.m (révision 1608) +--- sope-appserver/WEExtensions/WEResourceManager.m (révision 1632) +++ sope-appserver/WEExtensions/WEResourceManager.m (copie de travail) @@ -53,28 +53,43 @@ @@ -2194,7 +2184,7 @@ Index: sope-appserver/WEExtensions/WEResourceManager.m Index: sope-appserver/WEExtensions/WETableView/GNUmakefile =================================================================== ---- sope-appserver/WEExtensions/WETableView/GNUmakefile (révision 1608) +--- sope-appserver/WEExtensions/WETableView/GNUmakefile (révision 1632) +++ sope-appserver/WEExtensions/WETableView/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2206,7 +2196,7 @@ Index: sope-appserver/WEExtensions/WETableView/GNUmakefile SUBPROJECT_NAME = WETableView Index: sope-appserver/NGObjWeb/WOCoreApplication+Bundle.m =================================================================== ---- sope-appserver/NGObjWeb/WOCoreApplication+Bundle.m (révision 1608) +--- sope-appserver/NGObjWeb/WOCoreApplication+Bundle.m (révision 1632) +++ sope-appserver/NGObjWeb/WOCoreApplication+Bundle.m (copie de travail) @@ -50,8 +50,6 @@ } @@ -2240,7 +2230,7 @@ Index: sope-appserver/NGObjWeb/WOCoreApplication+Bundle.m tmp = [tmp componentsSeparatedByString:@":"]; Index: sope-appserver/NGObjWeb/wobundle-gs.make =================================================================== ---- sope-appserver/NGObjWeb/wobundle-gs.make (révision 1608) +--- sope-appserver/NGObjWeb/wobundle-gs.make (révision 1632) +++ sope-appserver/NGObjWeb/wobundle-gs.make (copie de travail) @@ -85,7 +85,7 @@ endif @@ -2266,7 +2256,7 @@ Index: sope-appserver/NGObjWeb/wobundle-gs.make endif Index: sope-appserver/NGObjWeb/GNUmakefile.preamble =================================================================== ---- sope-appserver/NGObjWeb/GNUmakefile.preamble (révision 1608) +--- sope-appserver/NGObjWeb/GNUmakefile.preamble (révision 1632) +++ sope-appserver/NGObjWeb/GNUmakefile.preamble (copie de travail) @@ -50,9 +50,6 @@ $(foreach dir,$(DEP_DIRS),-F$(GNUSTEP_BUILD_DIR)/$(dir)) @@ -2305,7 +2295,7 @@ Index: sope-appserver/NGObjWeb/GNUmakefile.preamble endif Index: sope-appserver/NGObjWeb/GNUmakefile =================================================================== ---- sope-appserver/NGObjWeb/GNUmakefile (révision 1608) +--- sope-appserver/NGObjWeb/GNUmakefile (révision 1632) +++ sope-appserver/NGObjWeb/GNUmakefile (copie de travail) @@ -1,11 +1,9 @@ # GNUstep makefile @@ -2374,7 +2364,7 @@ Index: sope-appserver/NGObjWeb/GNUmakefile --include fhs.make Index: sope-appserver/NGObjWeb/WebDAV/GNUmakefile =================================================================== ---- sope-appserver/NGObjWeb/WebDAV/GNUmakefile (révision 1608) +--- sope-appserver/NGObjWeb/WebDAV/GNUmakefile (révision 1632) +++ sope-appserver/NGObjWeb/WebDAV/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2386,7 +2376,7 @@ Index: sope-appserver/NGObjWeb/WebDAV/GNUmakefile include $(GNUSTEP_MAKEFILES)/common.make Index: sope-appserver/NGObjWeb/DynamicElements/GNUmakefile =================================================================== ---- sope-appserver/NGObjWeb/DynamicElements/GNUmakefile (révision 1608) +--- sope-appserver/NGObjWeb/DynamicElements/GNUmakefile (révision 1632) +++ sope-appserver/NGObjWeb/DynamicElements/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2398,7 +2388,7 @@ Index: sope-appserver/NGObjWeb/DynamicElements/GNUmakefile SUBPROJECT_NAME = DynamicElements Index: sope-appserver/NGObjWeb/SoObjects/SoProductLoader.m =================================================================== ---- sope-appserver/NGObjWeb/SoObjects/SoProductLoader.m (révision 1608) +--- sope-appserver/NGObjWeb/SoObjects/SoProductLoader.m (révision 1632) +++ sope-appserver/NGObjWeb/SoObjects/SoProductLoader.m (copie de travail) @@ -74,6 +74,14 @@ } @@ -2425,7 +2415,7 @@ Index: sope-appserver/NGObjWeb/SoObjects/SoProductLoader.m - (void)_addFHSPathesToArray:(NSMutableArray *)ma { Index: sope-appserver/NGObjWeb/SoObjects/SoProductRegistry.m =================================================================== ---- sope-appserver/NGObjWeb/SoObjects/SoProductRegistry.m (révision 1608) +--- sope-appserver/NGObjWeb/SoObjects/SoProductRegistry.m (révision 1632) +++ sope-appserver/NGObjWeb/SoObjects/SoProductRegistry.m (copie de travail) @@ -231,7 +231,7 @@ @@ -2502,7 +2492,7 @@ Index: sope-appserver/NGObjWeb/SoObjects/SoProductRegistry.m #endif Index: sope-appserver/NGObjWeb/SoObjects/GNUmakefile.preamble =================================================================== ---- sope-appserver/NGObjWeb/SoObjects/GNUmakefile.preamble (révision 1608) +--- sope-appserver/NGObjWeb/SoObjects/GNUmakefile.preamble (révision 1632) +++ sope-appserver/NGObjWeb/SoObjects/GNUmakefile.preamble (copie de travail) @@ -1,5 +1,7 @@ # compilation settings @@ -2523,7 +2513,7 @@ Index: sope-appserver/NGObjWeb/SoObjects/GNUmakefile.preamble endif Index: sope-appserver/NGObjWeb/SoObjects/GNUmakefile =================================================================== ---- sope-appserver/NGObjWeb/SoObjects/GNUmakefile (révision 1608) +--- sope-appserver/NGObjWeb/SoObjects/GNUmakefile (révision 1632) +++ sope-appserver/NGObjWeb/SoObjects/GNUmakefile (copie de travail) @@ -1,7 +1,7 @@ # GNUstep makefile @@ -2536,7 +2526,7 @@ Index: sope-appserver/NGObjWeb/SoObjects/GNUmakefile Index: sope-appserver/NGObjWeb/Templates/GNUmakefile =================================================================== ---- sope-appserver/NGObjWeb/Templates/GNUmakefile (révision 1608) +--- sope-appserver/NGObjWeb/Templates/GNUmakefile (révision 1632) +++ sope-appserver/NGObjWeb/Templates/GNUmakefile (copie de travail) @@ -1,7 +1,7 @@ # GNUmakefile makefile @@ -2549,7 +2539,7 @@ Index: sope-appserver/NGObjWeb/Templates/GNUmakefile Index: sope-appserver/NGObjWeb/Templates/WOApplication+Builders.m =================================================================== ---- sope-appserver/NGObjWeb/Templates/WOApplication+Builders.m (révision 1608) +--- sope-appserver/NGObjWeb/Templates/WOApplication+Builders.m (révision 1632) +++ sope-appserver/NGObjWeb/Templates/WOApplication+Builders.m (copie de travail) @@ -76,7 +76,7 @@ @@ -2610,7 +2600,7 @@ Index: sope-appserver/NGObjWeb/Templates/WOApplication+Builders.m [FHS_INSTALL_ROOT stringByAppendingString:relPath], Index: sope-appserver/NGObjWeb/Templates/GNUmakefile.preamble =================================================================== ---- sope-appserver/NGObjWeb/Templates/GNUmakefile.preamble (révision 1608) +--- sope-appserver/NGObjWeb/Templates/GNUmakefile.preamble (révision 1632) +++ sope-appserver/NGObjWeb/Templates/GNUmakefile.preamble (copie de travail) @@ -6,6 +6,6 @@ ADDITIONAL_CPPFLAGS += -DFHS_INSTALL_ROOT=\@\"$(FHS_INSTALL_ROOT)\" @@ -2623,7 +2613,7 @@ Index: sope-appserver/NGObjWeb/Templates/GNUmakefile.preamble endif Index: sope-appserver/NGObjWeb/Associations/GNUmakefile =================================================================== ---- sope-appserver/NGObjWeb/Associations/GNUmakefile (révision 1608) +--- sope-appserver/NGObjWeb/Associations/GNUmakefile (révision 1632) +++ sope-appserver/NGObjWeb/Associations/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2635,7 +2625,7 @@ Index: sope-appserver/NGObjWeb/Associations/GNUmakefile SUBPROJECT_NAME = Associations Index: sope-appserver/NGObjWeb/WOHttpAdaptor/GNUmakefile =================================================================== ---- sope-appserver/NGObjWeb/WOHttpAdaptor/GNUmakefile (révision 1608) +--- sope-appserver/NGObjWeb/WOHttpAdaptor/GNUmakefile (révision 1632) +++ sope-appserver/NGObjWeb/WOHttpAdaptor/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2647,7 +2637,7 @@ Index: sope-appserver/NGObjWeb/WOHttpAdaptor/GNUmakefile SUBPROJECT_NAME = WOHttpAdaptor Index: sope-appserver/NGObjWeb/woapp-gs.make =================================================================== ---- sope-appserver/NGObjWeb/woapp-gs.make (révision 1608) +--- sope-appserver/NGObjWeb/woapp-gs.make (révision 1632) +++ sope-appserver/NGObjWeb/woapp-gs.make (copie de travail) @@ -103,7 +103,7 @@ # Determine the application directory extension @@ -2672,7 +2662,7 @@ Index: sope-appserver/NGObjWeb/woapp-gs.make endif Index: sope-appserver/NGObjWeb/WOCoreApplication.m =================================================================== ---- sope-appserver/NGObjWeb/WOCoreApplication.m (révision 1608) +--- sope-appserver/NGObjWeb/WOCoreApplication.m (révision 1632) +++ sope-appserver/NGObjWeb/WOCoreApplication.m (copie de travail) @@ -730,9 +730,15 @@ [self sopeMajorVersion], [self sopeMinorVersion]]; @@ -2692,7 +2682,7 @@ Index: sope-appserver/NGObjWeb/WOCoreApplication.m + (NSArray *)resourcesSearchPathes { Index: sope-appserver/NGObjWeb/NGHttp/GNUmakefile =================================================================== ---- sope-appserver/NGObjWeb/NGHttp/GNUmakefile (révision 1608) +--- sope-appserver/NGObjWeb/NGHttp/GNUmakefile (révision 1632) +++ sope-appserver/NGObjWeb/NGHttp/GNUmakefile (copie de travail) @@ -1,10 +1,8 @@ # GNUstep makefile @@ -2717,7 +2707,7 @@ Index: sope-appserver/NGObjWeb/NGHttp/GNUmakefile -include GNUmakefile.postamble Index: sope-appserver/WEPrototype/GNUmakefile =================================================================== ---- sope-appserver/WEPrototype/GNUmakefile (révision 1608) +--- sope-appserver/WEPrototype/GNUmakefile (révision 1632) +++ sope-appserver/WEPrototype/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2753,7 +2743,7 @@ Index: sope-appserver/WEPrototype/GNUmakefile --include fhs.make Index: sope-appserver/WEPrototype/doc/GNUmakefile =================================================================== ---- sope-appserver/WEPrototype/doc/GNUmakefile (révision 1608) +--- sope-appserver/WEPrototype/doc/GNUmakefile (révision 1632) +++ sope-appserver/WEPrototype/doc/GNUmakefile (copie de travail) @@ -2,7 +2,7 @@ @@ -2766,7 +2756,7 @@ Index: sope-appserver/WEPrototype/doc/GNUmakefile Index: sope-appserver/WEPrototype/GNUmakefile.preamble =================================================================== ---- sope-appserver/WEPrototype/GNUmakefile.preamble (révision 1608) +--- sope-appserver/WEPrototype/GNUmakefile.preamble (révision 1632) +++ sope-appserver/WEPrototype/GNUmakefile.preamble (copie de travail) @@ -1,4 +1,4 @@ -# compiler flags @@ -2786,7 +2776,7 @@ Index: sope-appserver/WEPrototype/GNUmakefile.preamble libWEPrototype_LIBRARIES_DEPEND_UPON += \ Index: sope-appserver/common.make =================================================================== ---- sope-appserver/common.make (révision 1608) +--- sope-appserver/common.make (révision 1632) +++ sope-appserver/common.make (copie de travail) @@ -4,8 +4,6 @@ include ../Version @@ -2799,7 +2789,7 @@ Index: sope-appserver/common.make ADDITIONAL_INCLUDE_DIRS += \ Index: sope-appserver/samples/CoreDataBlog/GNUmakefile =================================================================== ---- sope-appserver/samples/CoreDataBlog/GNUmakefile (révision 1608) +--- sope-appserver/samples/CoreDataBlog/GNUmakefile (révision 1632) +++ sope-appserver/samples/CoreDataBlog/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2811,7 +2801,7 @@ Index: sope-appserver/samples/CoreDataBlog/GNUmakefile WOAPP_NAME = CoreDataBlog Index: sope-appserver/samples/HelloForm/GNUmakefile =================================================================== ---- sope-appserver/samples/HelloForm/GNUmakefile (révision 1608) +--- sope-appserver/samples/HelloForm/GNUmakefile (révision 1632) +++ sope-appserver/samples/HelloForm/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2823,7 +2813,7 @@ Index: sope-appserver/samples/HelloForm/GNUmakefile WOAPP_NAME = HelloForm Index: sope-appserver/samples/GNUmakefile =================================================================== ---- sope-appserver/samples/GNUmakefile (révision 1608) +--- sope-appserver/samples/GNUmakefile (révision 1632) +++ sope-appserver/samples/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2835,7 +2825,7 @@ Index: sope-appserver/samples/GNUmakefile SUBPROJECTS += \ Index: sope-appserver/samples/iCalPortal/GNUmakefile.preamble =================================================================== ---- sope-appserver/samples/iCalPortal/GNUmakefile.preamble (révision 1608) +--- sope-appserver/samples/iCalPortal/GNUmakefile.preamble (révision 1632) +++ sope-appserver/samples/iCalPortal/GNUmakefile.preamble (copie de travail) @@ -7,7 +7,9 @@ -lEOControl \ @@ -2849,7 +2839,7 @@ Index: sope-appserver/samples/iCalPortal/GNUmakefile.preamble SYSTEM_LIB_DIR += -L/usr/local/lib -L/usr/lib Index: sope-appserver/samples/iCalPortal/GNUmakefile =================================================================== ---- sope-appserver/samples/iCalPortal/GNUmakefile (révision 1608) +--- sope-appserver/samples/iCalPortal/GNUmakefile (révision 1632) +++ sope-appserver/samples/iCalPortal/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2861,7 +2851,7 @@ Index: sope-appserver/samples/iCalPortal/GNUmakefile WOAPP_NAME = iCalPortal Index: sope-appserver/samples/iCalPortal/Pages/GNUmakefile =================================================================== ---- sope-appserver/samples/iCalPortal/Pages/GNUmakefile (révision 1608) +--- sope-appserver/samples/iCalPortal/Pages/GNUmakefile (révision 1632) +++ sope-appserver/samples/iCalPortal/Pages/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2873,7 +2863,7 @@ Index: sope-appserver/samples/iCalPortal/Pages/GNUmakefile SUBPROJECT_NAME = Pages Index: sope-appserver/samples/iCalPortal/WebDAV/GNUmakefile =================================================================== ---- sope-appserver/samples/iCalPortal/WebDAV/GNUmakefile (révision 1608) +--- sope-appserver/samples/iCalPortal/WebDAV/GNUmakefile (révision 1632) +++ sope-appserver/samples/iCalPortal/WebDAV/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2885,7 +2875,7 @@ Index: sope-appserver/samples/iCalPortal/WebDAV/GNUmakefile SUBPROJECT_NAME = DAV Index: sope-appserver/samples/SoCookieAuth/GNUmakefile =================================================================== ---- sope-appserver/samples/SoCookieAuth/GNUmakefile (révision 1608) +--- sope-appserver/samples/SoCookieAuth/GNUmakefile (révision 1632) +++ sope-appserver/samples/SoCookieAuth/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2897,7 +2887,7 @@ Index: sope-appserver/samples/SoCookieAuth/GNUmakefile WOAPP_NAME = SoCookieAuth Index: sope-appserver/samples/WOxExtTest/GNUmakefile =================================================================== ---- sope-appserver/samples/WOxExtTest/GNUmakefile (révision 1608) +--- sope-appserver/samples/WOxExtTest/GNUmakefile (révision 1632) +++ sope-appserver/samples/WOxExtTest/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2909,7 +2899,7 @@ Index: sope-appserver/samples/WOxExtTest/GNUmakefile WOAPP_NAME = WOxExtTest Index: sope-appserver/samples/TestPages/GNUmakefile =================================================================== ---- sope-appserver/samples/TestPages/GNUmakefile (révision 1608) +--- sope-appserver/samples/TestPages/GNUmakefile (révision 1632) +++ sope-appserver/samples/TestPages/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2921,7 +2911,7 @@ Index: sope-appserver/samples/TestPages/GNUmakefile WOAPP_NAME = TestPages Index: sope-appserver/samples/parsedav/GNUmakefile =================================================================== ---- sope-appserver/samples/parsedav/GNUmakefile (révision 1608) +--- sope-appserver/samples/parsedav/GNUmakefile (révision 1632) +++ sope-appserver/samples/parsedav/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2933,7 +2923,7 @@ Index: sope-appserver/samples/parsedav/GNUmakefile TOOL_NAME = parsedav Index: sope-appserver/samples/xmlrpc/GNUmakefile =================================================================== ---- sope-appserver/samples/xmlrpc/GNUmakefile (révision 1608) +--- sope-appserver/samples/xmlrpc/GNUmakefile (révision 1632) +++ sope-appserver/samples/xmlrpc/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2945,7 +2935,7 @@ Index: sope-appserver/samples/xmlrpc/GNUmakefile TOOL_NAME = \ Index: sope-appserver/samples/TestPrototype/GNUmakefile =================================================================== ---- sope-appserver/samples/TestPrototype/GNUmakefile (révision 1608) +--- sope-appserver/samples/TestPrototype/GNUmakefile (révision 1632) +++ sope-appserver/samples/TestPrototype/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2957,7 +2947,7 @@ Index: sope-appserver/samples/TestPrototype/GNUmakefile WOAPP_NAME = TestPrototype Index: sope-appserver/samples/HelloWorld/GNUmakefile =================================================================== ---- sope-appserver/samples/HelloWorld/GNUmakefile (révision 1608) +--- sope-appserver/samples/HelloWorld/GNUmakefile (révision 1632) +++ sope-appserver/samples/HelloWorld/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2969,7 +2959,7 @@ Index: sope-appserver/samples/HelloWorld/GNUmakefile WOAPP_NAME = HelloWorld Index: sope-appserver/samples/davpropget/GNUmakefile =================================================================== ---- sope-appserver/samples/davpropget/GNUmakefile (révision 1608) +--- sope-appserver/samples/davpropget/GNUmakefile (révision 1632) +++ sope-appserver/samples/davpropget/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -2981,7 +2971,7 @@ Index: sope-appserver/samples/davpropget/GNUmakefile TOOL_NAME = davpropget Index: sope-appserver/WOExtensions/GNUmakefile.preamble =================================================================== ---- sope-appserver/WOExtensions/GNUmakefile.preamble (révision 1608) +--- sope-appserver/WOExtensions/GNUmakefile.preamble (révision 1632) +++ sope-appserver/WOExtensions/GNUmakefile.preamble (copie de travail) @@ -12,7 +12,8 @@ -I$(SOPE_ROOT)/sope-xml @@ -2995,7 +2985,7 @@ Index: sope-appserver/WOExtensions/GNUmakefile.preamble Index: sope-appserver/WOExtensions/GNUmakefile =================================================================== ---- sope-appserver/WOExtensions/GNUmakefile (révision 1608) +--- sope-appserver/WOExtensions/GNUmakefile (révision 1632) +++ sope-appserver/WOExtensions/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -3031,7 +3021,7 @@ Index: sope-appserver/WOExtensions/GNUmakefile --include fhs.make Index: sope-appserver/WOXML/GNUmakefile =================================================================== ---- sope-appserver/WOXML/GNUmakefile (révision 1608) +--- sope-appserver/WOXML/GNUmakefile (révision 1632) +++ sope-appserver/WOXML/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -3065,7 +3055,7 @@ Index: sope-appserver/WOXML/GNUmakefile --include fhs.make Index: sope-appserver/WOXML/GNUmakefile.preamble =================================================================== ---- sope-appserver/WOXML/GNUmakefile.preamble (révision 1608) +--- sope-appserver/WOXML/GNUmakefile.preamble (révision 1632) +++ sope-appserver/WOXML/GNUmakefile.preamble (copie de travail) @@ -2,7 +2,7 @@ @@ -3078,7 +3068,7 @@ Index: sope-appserver/WOXML/GNUmakefile.preamble libWOXML_INCLUDE_DIRS += -I. -I.. Index: sope-ical/samples/GNUmakefile =================================================================== ---- sope-ical/samples/GNUmakefile (révision 1608) +--- sope-ical/samples/GNUmakefile (révision 1632) +++ sope-ical/samples/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -3095,7 +3085,7 @@ Index: sope-ical/samples/GNUmakefile --include fhs.make Index: sope-ical/versitSaxDriver/GNUmakefile =================================================================== ---- sope-ical/versitSaxDriver/GNUmakefile (révision 1608) +--- sope-ical/versitSaxDriver/GNUmakefile (révision 1632) +++ sope-ical/versitSaxDriver/GNUmakefile (copie de travail) @@ -1,13 +1,13 @@ # GNUstep makefile @@ -3120,7 +3110,7 @@ Index: sope-ical/versitSaxDriver/GNUmakefile --include fhs.make Index: sope-ical/GNUmakefile =================================================================== ---- sope-ical/GNUmakefile (révision 1608) +--- sope-ical/GNUmakefile (révision 1632) +++ sope-ical/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile @@ -3132,7 +3122,7 @@ Index: sope-ical/GNUmakefile PACKAGE_NAME=sope-ical Index: sope-ical/NGiCal/GNUmakefile.postamble =================================================================== ---- sope-ical/NGiCal/GNUmakefile.postamble (révision 1608) +--- sope-ical/NGiCal/GNUmakefile.postamble (révision 1632) +++ sope-ical/NGiCal/GNUmakefile.postamble (copie de travail) @@ -1,10 +1,6 @@ # compilation settings @@ -3148,7 +3138,7 @@ Index: sope-ical/NGiCal/GNUmakefile.postamble $(MKDIRS) $(MAPDIR) Index: sope-ical/NGiCal/GNUmakefile =================================================================== ---- sope-ical/NGiCal/GNUmakefile (révision 1608) +--- sope-ical/NGiCal/GNUmakefile (révision 1632) +++ sope-ical/NGiCal/GNUmakefile (copie de travail) @@ -1,6 +1,6 @@ # GNUstep makefile diff --git a/SOPE/sope-patchset-r1630.diff b/SOPE/sope-patchset-r1632.diff similarity index 93% rename from SOPE/sope-patchset-r1630.diff rename to SOPE/sope-patchset-r1632.diff index cb8d195b6..56a664ed6 100644 --- a/SOPE/sope-patchset-r1630.diff +++ b/SOPE/sope-patchset-r1632.diff @@ -1,7 +1,7 @@ Index: sope-gdl1/PostgreSQL/PostgreSQL72Channel.m =================================================================== ---- sope-gdl1/PostgreSQL/PostgreSQL72Channel.m (revision 1632) -+++ sope-gdl1/PostgreSQL/PostgreSQL72Channel.m (working copy) +--- sope-gdl1/PostgreSQL/PostgreSQL72Channel.m (révision 1632) ++++ sope-gdl1/PostgreSQL/PostgreSQL72Channel.m (copie de travail) @@ -713,6 +713,39 @@ return ms; } @@ -44,8 +44,8 @@ Index: sope-gdl1/PostgreSQL/PostgreSQL72Channel.m @implementation PostgreSQL72Channel(PrimaryKeyGeneration) Index: sope-gdl1/MySQL/MySQL4Channel.m =================================================================== ---- sope-gdl1/MySQL/MySQL4Channel.m (revision 1632) -+++ sope-gdl1/MySQL/MySQL4Channel.m (working copy) +--- sope-gdl1/MySQL/MySQL4Channel.m (révision 1632) ++++ sope-gdl1/MySQL/MySQL4Channel.m (copie de travail) @@ -755,6 +755,39 @@ return pkey; } @@ -88,8 +88,8 @@ Index: sope-gdl1/MySQL/MySQL4Channel.m void __link_MySQL4Channel() { Index: sope-gdl1/GDLAccess/EOAdaptor.m =================================================================== ---- sope-gdl1/GDLAccess/EOAdaptor.m (revision 1632) -+++ sope-gdl1/GDLAccess/EOAdaptor.m (working copy) +--- sope-gdl1/GDLAccess/EOAdaptor.m (révision 1632) ++++ sope-gdl1/GDLAccess/EOAdaptor.m (copie de travail) @@ -202,6 +202,7 @@ if ([_scheme isEqualToString:@"sybase"]) return @"Sybase10"; if ([_scheme isEqualToString:@"sqlite"]) return @"SQLite3"; @@ -100,8 +100,8 @@ Index: sope-gdl1/GDLAccess/EOAdaptor.m NSLog(@"WARNING(%s): asked for 'http' URL, " Index: sope-gdl1/Oracle8/OracleAdaptorChannel.m =================================================================== ---- sope-gdl1/Oracle8/OracleAdaptorChannel.m (revision 1632) -+++ sope-gdl1/Oracle8/OracleAdaptorChannel.m (working copy) +--- sope-gdl1/Oracle8/OracleAdaptorChannel.m (révision 1632) ++++ sope-gdl1/Oracle8/OracleAdaptorChannel.m (copie de travail) @@ -1,7 +1,7 @@ /* ** OracleAdaptorChannel.m @@ -288,8 +288,8 @@ Index: sope-gdl1/Oracle8/OracleAdaptorChannel.m @" c_lastmodified INTEGER NOT NULL,\n" Index: sope-gdl1/Oracle8/OracleAdaptorChannelController.m =================================================================== ---- sope-gdl1/Oracle8/OracleAdaptorChannelController.m (revision 1632) -+++ sope-gdl1/Oracle8/OracleAdaptorChannelController.m (working copy) +--- sope-gdl1/Oracle8/OracleAdaptorChannelController.m (révision 1632) ++++ sope-gdl1/Oracle8/OracleAdaptorChannelController.m (copie de travail) @@ -31,6 +31,8 @@ #import #import @@ -336,8 +336,8 @@ Index: sope-gdl1/Oracle8/OracleAdaptorChannelController.m Index: sope-mime/NGImap4/NGImap4Client.h =================================================================== ---- sope-mime/NGImap4/NGImap4Client.h (revision 1632) -+++ sope-mime/NGImap4/NGImap4Client.h (working copy) +--- sope-mime/NGImap4/NGImap4Client.h (révision 1632) ++++ sope-mime/NGImap4/NGImap4Client.h (copie de travail) @@ -62,6 +62,8 @@ NGImap4ResponseNormalizer *normer; NSMutableArray *responseReceiver; @@ -366,8 +366,8 @@ Index: sope-mime/NGImap4/NGImap4Client.h - (NSDictionary *)copyUid:(unsigned)_uid toFolder:(NSString *)_folder; Index: sope-mime/NGImap4/NGImap4Client.m =================================================================== ---- sope-mime/NGImap4/NGImap4Client.m (revision 1632) -+++ sope-mime/NGImap4/NGImap4Client.m (working copy) +--- sope-mime/NGImap4/NGImap4Client.m (révision 1632) ++++ sope-mime/NGImap4/NGImap4Client.m (copie de travail) @@ -24,6 +24,8 @@ #include "NGImap4Client.h" #include "NGImap4Context.h" @@ -675,8 +675,8 @@ Index: sope-mime/NGImap4/NGImap4Client.m __PRETTY_FUNCTION__, [_exception name], [_exception reason]]; Index: sope-mime/NGImap4/NGSieveClient.m =================================================================== ---- sope-mime/NGImap4/NGSieveClient.m (revision 1632) -+++ sope-mime/NGImap4/NGSieveClient.m (working copy) +--- sope-mime/NGImap4/NGSieveClient.m (révision 1632) ++++ sope-mime/NGImap4/NGSieveClient.m (copie de travail) @@ -294,8 +294,8 @@ return con; } @@ -711,8 +711,8 @@ Index: sope-mime/NGImap4/NGSieveClient.m /* write */ Index: sope-mime/NGImap4/NGImap4Connection.h =================================================================== ---- sope-mime/NGImap4/NGImap4Connection.h (revision 1632) -+++ sope-mime/NGImap4/NGImap4Connection.h (working copy) +--- sope-mime/NGImap4/NGImap4Connection.h (révision 1632) ++++ sope-mime/NGImap4/NGImap4Connection.h (copie de travail) @@ -89,6 +89,7 @@ - (NSArray *)subfoldersForURL:(NSURL *)_url; @@ -723,8 +723,8 @@ Index: sope-mime/NGImap4/NGImap4Connection.h Index: sope-mime/NGImap4/NGImap4Connection.m =================================================================== ---- sope-mime/NGImap4/NGImap4Connection.m (revision 1632) -+++ sope-mime/NGImap4/NGImap4Connection.m (working copy) +--- sope-mime/NGImap4/NGImap4Connection.m (révision 1632) ++++ sope-mime/NGImap4/NGImap4Connection.m (copie de travail) @@ -381,7 +381,7 @@ if (debugCache) [self logWithFormat:@" no folders cached yet .."]; @@ -771,8 +771,8 @@ Index: sope-mime/NGImap4/NGImap4Connection.m - (id)infoForMailboxAtURL:(NSURL *)_url { Index: sope-mime/NGImap4/NGImap4ResponseNormalizer.m =================================================================== ---- sope-mime/NGImap4/NGImap4ResponseNormalizer.m (revision 1632) -+++ sope-mime/NGImap4/NGImap4ResponseNormalizer.m (working copy) +--- sope-mime/NGImap4/NGImap4ResponseNormalizer.m (révision 1632) ++++ sope-mime/NGImap4/NGImap4ResponseNormalizer.m (copie de travail) @@ -292,7 +292,7 @@ /* filter for fetch response @@ -820,8 +820,8 @@ Index: sope-mime/NGImap4/NGImap4ResponseNormalizer.m if (objs) free(objs); Index: sope-mime/NGImap4/NGImap4ResponseParser.m =================================================================== ---- sope-mime/NGImap4/NGImap4ResponseParser.m (revision 1632) -+++ sope-mime/NGImap4/NGImap4ResponseParser.m (working copy) +--- sope-mime/NGImap4/NGImap4ResponseParser.m (révision 1632) ++++ sope-mime/NGImap4/NGImap4ResponseParser.m (copie de travail) @@ -31,6 +31,7 @@ @interface NGImap4ResponseParser(ParsingPrivates) - (BOOL)_parseNumberUntaggedResponse:(NGMutableHashMap *)result_; @@ -1271,8 +1271,8 @@ Index: sope-mime/NGImap4/NGImap4ResponseParser.m self->serverResponseDebug = Index: sope-mime/NGImap4/ChangeLog =================================================================== ---- sope-mime/NGImap4/ChangeLog (revision 1632) -+++ sope-mime/NGImap4/ChangeLog (working copy) +--- sope-mime/NGImap4/ChangeLog (révision 1632) ++++ sope-mime/NGImap4/ChangeLog (copie de travail) @@ -1,3 +1,29 @@ +2008-10-23 Wolfgang Sourdeau + @@ -1305,8 +1305,8 @@ Index: sope-mime/NGImap4/ChangeLog * NGImap4Connection.m: some fix for folders ending with a slash (OGo Index: sope-mime/NGImap4/NGImap4ConnectionManager.m =================================================================== ---- sope-mime/NGImap4/NGImap4ConnectionManager.m (revision 1632) -+++ sope-mime/NGImap4/NGImap4ConnectionManager.m (working copy) +--- sope-mime/NGImap4/NGImap4ConnectionManager.m (révision 1632) ++++ sope-mime/NGImap4/NGImap4ConnectionManager.m (copie de travail) @@ -38,6 +38,9 @@ debugCache = [ud boolForKey:@"NGImap4EnableIMAP4CacheDebug"]; poolingOff = [ud boolForKey:@"NGImap4DisableIMAP4Pooling"]; @@ -1432,8 +1432,8 @@ Index: sope-mime/NGImap4/NGImap4ConnectionManager.m /* client object */ Index: sope-mime/NGImap4/NSString+Imap4.m =================================================================== ---- sope-mime/NGImap4/NSString+Imap4.m (revision 1632) -+++ sope-mime/NGImap4/NSString+Imap4.m (working copy) +--- sope-mime/NGImap4/NSString+Imap4.m (révision 1632) ++++ sope-mime/NGImap4/NSString+Imap4.m (copie de travail) @@ -20,11 +20,56 @@ 02111-1307, USA. */ @@ -1954,8 +1954,8 @@ Index: sope-mime/NGImap4/NSString+Imap4.m +@end /* NSString(Imap4) */ Index: sope-mime/NGMail/NGSmtpClient.m =================================================================== ---- sope-mime/NGMail/NGSmtpClient.m (revision 1632) -+++ sope-mime/NGMail/NGSmtpClient.m (working copy) +--- sope-mime/NGMail/NGSmtpClient.m (révision 1632) ++++ sope-mime/NGMail/NGSmtpClient.m (copie de travail) @@ -24,6 +24,82 @@ #include "NGSmtpReplyCodes.h" #include "common.h" @@ -2110,8 +2110,8 @@ Index: sope-mime/NGMail/NGSmtpClient.m reply = [self receiveReply]; Index: sope-mime/NGMail/NGMailAddressParser.h =================================================================== ---- sope-mime/NGMail/NGMailAddressParser.h (revision 1632) -+++ sope-mime/NGMail/NGMailAddressParser.h (working copy) +--- sope-mime/NGMail/NGMailAddressParser.h (révision 1632) ++++ sope-mime/NGMail/NGMailAddressParser.h (copie de travail) @@ -24,7 +24,9 @@ #import @@ -2148,8 +2148,8 @@ Index: sope-mime/NGMail/NGMailAddressParser.h Index: sope-mime/NGMail/NGMimeMessageGenerator.m =================================================================== ---- sope-mime/NGMail/NGMimeMessageGenerator.m (revision 1632) -+++ sope-mime/NGMail/NGMimeMessageGenerator.m (working copy) +--- sope-mime/NGMail/NGMimeMessageGenerator.m (révision 1632) ++++ sope-mime/NGMail/NGMimeMessageGenerator.m (copie de travail) @@ -86,37 +86,40 @@ char *des = NULL; unsigned int cnt; @@ -2214,8 +2214,8 @@ Index: sope-mime/NGMail/NGMimeMessageGenerator.m unsigned isoEndLen = 2; Index: sope-mime/NGMail/NGMailAddressParser.m =================================================================== ---- sope-mime/NGMail/NGMailAddressParser.m (revision 1632) -+++ sope-mime/NGMail/NGMailAddressParser.m (working copy) +--- sope-mime/NGMail/NGMailAddressParser.m (révision 1632) ++++ sope-mime/NGMail/NGMailAddressParser.m (copie de travail) @@ -52,9 +52,9 @@ StrClass = [NSString class]; } @@ -2359,8 +2359,8 @@ Index: sope-mime/NGMail/NGMailAddressParser.m self->dataPos = 0; Index: sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m =================================================================== ---- sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m (revision 1632) -+++ sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m (working copy) +--- sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m (révision 1632) ++++ sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m (copie de travail) @@ -19,88 +19,45 @@ 02111-1307, USA. */ @@ -2764,8 +2764,8 @@ Index: sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m #if 0 Index: sope-mime/NGMime/NGMimeMultipartBodyParser.m =================================================================== ---- sope-mime/NGMime/NGMimeMultipartBodyParser.m (revision 1632) -+++ sope-mime/NGMime/NGMimeMultipartBodyParser.m (working copy) +--- sope-mime/NGMime/NGMimeMultipartBodyParser.m (révision 1632) ++++ sope-mime/NGMime/NGMimeMultipartBodyParser.m (copie de travail) @@ -428,6 +428,7 @@ NSString *boundary = nil; NSArray *rawBodyParts = nil; @@ -2789,8 +2789,8 @@ Index: sope-mime/NGMime/NGMimeMultipartBodyParser.m if (rawBodyParts) { Index: sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m =================================================================== ---- sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m (revision 1632) -+++ sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m (working copy) +--- sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m (révision 1632) ++++ sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m (copie de travail) @@ -77,6 +77,7 @@ [rfc822Set setGenerator:gen forField:@"bcc"]; [rfc822Set setGenerator:gen forField:Fields->from]; @@ -2801,8 +2801,8 @@ Index: sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m Index: sope-mime/NGMime/NGMimeType.m =================================================================== ---- sope-mime/NGMime/NGMimeType.m (revision 1632) -+++ sope-mime/NGMime/NGMimeType.m (working copy) +--- sope-mime/NGMime/NGMimeType.m (révision 1632) ++++ sope-mime/NGMime/NGMimeType.m (copie de travail) @@ -120,28 +120,23 @@ /* some unsupported, but known encoding */ @@ -2899,8 +2899,8 @@ Index: sope-mime/NGMime/NGMimeType.m - (NSString *)stringValue { Index: sope-mime/NGMime/NGMimeBodyPart.m =================================================================== ---- sope-mime/NGMime/NGMimeBodyPart.m (revision 1632) -+++ sope-mime/NGMime/NGMimeBodyPart.m (working copy) +--- sope-mime/NGMime/NGMimeBodyPart.m (révision 1632) ++++ sope-mime/NGMime/NGMimeBodyPart.m (copie de travail) @@ -31,18 +31,6 @@ return 2; } @@ -2937,8 +2937,8 @@ Index: sope-mime/NGMime/NGMimeBodyPart.m - (NSString *)contentId { Index: sope-mime/NGMime/ChangeLog =================================================================== ---- sope-mime/NGMime/ChangeLog (revision 1632) -+++ sope-mime/NGMime/ChangeLog (working copy) +--- sope-mime/NGMime/ChangeLog (révision 1632) ++++ sope-mime/NGMime/ChangeLog (copie de travail) @@ -1,3 +1,25 @@ +2008-09-08 Wolfgang Sourdeau + @@ -2967,8 +2967,8 @@ Index: sope-mime/NGMime/ChangeLog * fixes for OGo bug #789 (reply-to QP encoding) Index: sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m =================================================================== ---- sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m (revision 1632) -+++ sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m (working copy) +--- sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m (révision 1632) ++++ sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m (copie de travail) @@ -36,8 +36,7 @@ NGMimeType *type = nil; // only one content-type field NSString *tmp = nil; @@ -3107,8 +3107,8 @@ Index: sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m } Index: sope-mime/NGMime/NGMimePartGenerator.m =================================================================== ---- sope-mime/NGMime/NGMimePartGenerator.m (revision 1632) -+++ sope-mime/NGMime/NGMimePartGenerator.m (working copy) +--- sope-mime/NGMime/NGMimePartGenerator.m (révision 1632) ++++ sope-mime/NGMime/NGMimePartGenerator.m (copie de travail) @@ -155,8 +155,9 @@ BOOL isMultiValue, isFirst; @@ -3132,8 +3132,8 @@ Index: sope-mime/NGMime/NGMimePartGenerator.m Index: sope-mime/NGMime/NGMimeBodyParser.m =================================================================== ---- sope-mime/NGMime/NGMimeBodyParser.m (revision 1632) -+++ sope-mime/NGMime/NGMimeBodyParser.m (working copy) +--- sope-mime/NGMime/NGMimeBodyParser.m (révision 1632) ++++ sope-mime/NGMime/NGMimeBodyParser.m (copie de travail) @@ -67,7 +67,10 @@ if (_data == nil) return nil; @@ -3171,8 +3171,8 @@ Index: sope-mime/NGMime/NGMimeBodyParser.m } Index: sope-mime/NGMime/NGMimePartParser.h =================================================================== ---- sope-mime/NGMime/NGMimePartParser.h (revision 1632) -+++ sope-mime/NGMime/NGMimePartParser.h (working copy) +--- sope-mime/NGMime/NGMimePartParser.h (révision 1632) ++++ sope-mime/NGMime/NGMimePartParser.h (copie de travail) @@ -117,6 +117,7 @@ BOOL parserParseRawBodyDataOfPart:1; BOOL parserBodyParserForPart:1; @@ -3193,8 +3193,8 @@ Index: sope-mime/NGMime/NGMimePartParser.h @interface NSObject(NGMimePartParser) Index: sope-mime/NGMime/NGMimePartParser.m =================================================================== ---- sope-mime/NGMime/NGMimePartParser.m (revision 1632) -+++ sope-mime/NGMime/NGMimePartParser.m (working copy) +--- sope-mime/NGMime/NGMimePartParser.m (révision 1632) ++++ sope-mime/NGMime/NGMimePartParser.m (copie de travail) @@ -227,7 +227,7 @@ } @@ -3218,8 +3218,8 @@ Index: sope-mime/NGMime/NGMimePartParser.m : [NGMimeType mimeType:[ctype stringValue]]; Index: sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m =================================================================== ---- sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m (revision 1632) -+++ sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m (working copy) +--- sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m (révision 1632) ++++ sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m (copie de travail) @@ -105,10 +105,10 @@ } @@ -3304,8 +3304,8 @@ Index: sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m return data; Index: sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m =================================================================== ---- sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m (revision 1632) -+++ sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m (working copy) +--- sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m (révision 1632) ++++ sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m (copie de travail) @@ -49,80 +49,70 @@ // TODO: move the stuff below to some NSString or NSData category? @@ -3440,8 +3440,8 @@ Index: sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m } Index: sope-core/NGExtensions/NGExtensions/NSString+Ext.h =================================================================== ---- sope-core/NGExtensions/NGExtensions/NSString+Ext.h (revision 1632) -+++ sope-core/NGExtensions/NGExtensions/NSString+Ext.h (working copy) +--- sope-core/NGExtensions/NGExtensions/NSString+Ext.h (révision 1632) ++++ sope-core/NGExtensions/NGExtensions/NSString+Ext.h (copie de travail) @@ -30,6 +30,7 @@ @interface NSString(GSAdditions) @@ -3478,8 +3478,8 @@ Index: sope-core/NGExtensions/NGExtensions/NSString+Ext.h /* specific to libFoundation */ Index: sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m =================================================================== ---- sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m (revision 1632) -+++ sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m (working copy) +--- sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m (révision 1632) ++++ sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m (copie de travail) @@ -39,18 +39,6 @@ : (NSString *)[[self copy] autorelease]; } @@ -3567,8 +3567,8 @@ Index: sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m - (BOOL)isAbsoluteURL Index: sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m =================================================================== ---- sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m (revision 1632) -+++ sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m (working copy) +--- sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m (révision 1632) ++++ sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m (copie de travail) @@ -140,8 +140,12 @@ @@ -3610,8 +3610,8 @@ Index: sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m static char *iconv_wrapper(id self, char *_src, unsigned _srcLen, Index: sope-core/NGExtensions/NGQuotedPrintableCoding.m =================================================================== ---- sope-core/NGExtensions/NGQuotedPrintableCoding.m (revision 1632) -+++ sope-core/NGExtensions/NGQuotedPrintableCoding.m (working copy) +--- sope-core/NGExtensions/NGQuotedPrintableCoding.m (révision 1632) ++++ sope-core/NGExtensions/NGQuotedPrintableCoding.m (copie de travail) @@ -278,7 +278,12 @@ for (cnt = 0; (cnt < _srcLen) && (destCnt < _destLen); cnt++) { @@ -3628,8 +3628,8 @@ Index: sope-core/NGExtensions/NGQuotedPrintableCoding.m ((c > 31) && (c < 61)) || Index: sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m =================================================================== ---- sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m (revision 1632) -+++ sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m (working copy) +--- sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m (révision 1632) ++++ sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m (copie de travail) @@ -19,6 +19,7 @@ 02111-1307, USA. */ @@ -3640,8 +3640,8 @@ Index: sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m Index: sope-core/NGStreams/GNUmakefile.preamble =================================================================== ---- sope-core/NGStreams/GNUmakefile.preamble (revision 1632) -+++ sope-core/NGStreams/GNUmakefile.preamble (working copy) +--- sope-core/NGStreams/GNUmakefile.preamble (révision 1632) ++++ sope-core/NGStreams/GNUmakefile.preamble (copie de travail) @@ -1,7 +1,10 @@ # compilation settings @@ -3653,10 +3653,23 @@ Index: sope-core/NGStreams/GNUmakefile.preamble -INGStreams \ -I../NGExtensions \ -I.. +Index: sope-xml/libxmlSAXDriver/ChangeLog +=================================================================== +--- sope-xml/libxmlSAXDriver/ChangeLog (révision 1632) ++++ sope-xml/libxmlSAXDriver/ChangeLog (copie de travail) +@@ -1,3 +1,8 @@ ++2009-03-24 Wolfgang Sourdeau ++ ++ * libxmlSAXDriver.m (_startElement): autorelease "nsDict" when its ++ instantiated from a copy of "ns". ++ + 2006-07-03 Helge Hess + + * libXMLSaxDriver.m: fixed last changes for libFoundation (v4.5.24) Index: sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h =================================================================== ---- sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h (revision 1632) -+++ sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h (working copy) +--- sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h (révision 1632) ++++ sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h (copie de travail) @@ -19,6 +19,8 @@ 02111-1307, USA. */ @@ -3677,8 +3690,8 @@ Index: sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h id entityResolver; Index: sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m =================================================================== ---- sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m (revision 1632) -+++ sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m (working copy) +--- sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m (révision 1632) ++++ sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m (copie de travail) @@ -30,6 +30,12 @@ #include #include @@ -3737,8 +3750,8 @@ Index: sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m - (void)tearDownParser { Index: sope-xml/libxmlSAXDriver/libxmlSAXDriver.m =================================================================== ---- sope-xml/libxmlSAXDriver/libxmlSAXDriver.m (revision 1632) -+++ sope-xml/libxmlSAXDriver/libxmlSAXDriver.m (working copy) +--- sope-xml/libxmlSAXDriver/libxmlSAXDriver.m (révision 1632) ++++ sope-xml/libxmlSAXDriver/libxmlSAXDriver.m (copie de travail) @@ -614,7 +614,7 @@ xmlParseDocument(ctxt); @@ -3757,10 +3770,18 @@ Index: sope-xml/libxmlSAXDriver/libxmlSAXDriver.m ((xmlParserCtxtPtr)self->ctxt)->sax = NULL; xmlFreeParserCtxt(self->ctxt); +@@ -872,6 +872,7 @@ + } + + nsDict = [ns copy]; ++ [nsDict autorelease]; + [ns release]; + } + Index: sope-appserver/mod_ngobjweb/config.c =================================================================== ---- sope-appserver/mod_ngobjweb/config.c (revision 1632) -+++ sope-appserver/mod_ngobjweb/config.c (working copy) +--- sope-appserver/mod_ngobjweb/config.c (révision 1632) ++++ sope-appserver/mod_ngobjweb/config.c (copie de travail) @@ -21,7 +21,7 @@ #include "common.h" @@ -3772,8 +3793,8 @@ Index: sope-appserver/mod_ngobjweb/config.c if (buf == NULL) Index: sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c =================================================================== ---- sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c (revision 1632) -+++ sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c (working copy) +--- sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c (révision 1632) ++++ sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c (copie de travail) @@ -23,6 +23,7 @@ #include #include @@ -3784,8 +3805,8 @@ Index: sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c // returns the number of bytes which where read from the buffer Index: sope-appserver/mod_ngobjweb/GNUmakefile =================================================================== ---- sope-appserver/mod_ngobjweb/GNUmakefile (revision 1632) -+++ sope-appserver/mod_ngobjweb/GNUmakefile (working copy) +--- sope-appserver/mod_ngobjweb/GNUmakefile (révision 1632) ++++ sope-appserver/mod_ngobjweb/GNUmakefile (copie de travail) @@ -82,7 +82,7 @@ CFLAGS = -Wall -I. -fPIC \ @@ -3807,8 +3828,8 @@ Index: sope-appserver/mod_ngobjweb/GNUmakefile $(INSTALL_PROGRAM) $(product) /usr/libexec/httpd/ Index: sope-appserver/NGObjWeb/GNUmakefile.postamble =================================================================== ---- sope-appserver/NGObjWeb/GNUmakefile.postamble (revision 1632) -+++ sope-appserver/NGObjWeb/GNUmakefile.postamble (working copy) +--- sope-appserver/NGObjWeb/GNUmakefile.postamble (révision 1632) ++++ sope-appserver/NGObjWeb/GNUmakefile.postamble (copie de travail) @@ -23,14 +23,20 @@ # install makefiles @@ -3839,8 +3860,8 @@ Index: sope-appserver/NGObjWeb/GNUmakefile.postamble + $(DESTDIR)/$(GNUSTEP_MAKEFILES)/wobundle.make Index: sope-appserver/NGObjWeb/WOContext.m =================================================================== ---- sope-appserver/NGObjWeb/WOContext.m (revision 1632) -+++ sope-appserver/NGObjWeb/WOContext.m (working copy) +--- sope-appserver/NGObjWeb/WOContext.m (révision 1632) ++++ sope-appserver/NGObjWeb/WOContext.m (copie de travail) @@ -64,11 +64,13 @@ static BOOL testNSURLs = NO; static BOOL newCURLStyle = NO; @@ -3879,10 +3900,19 @@ Index: sope-appserver/NGObjWeb/WOContext.m serverURL = [@"http://" stringByAppendingString:host]; Index: sope-appserver/NGObjWeb/ChangeLog =================================================================== ---- sope-appserver/NGObjWeb/ChangeLog (revision 1632) -+++ sope-appserver/NGObjWeb/ChangeLog (working copy) -@@ -3,6 +3,11 @@ +--- sope-appserver/NGObjWeb/ChangeLog (révision 1632) ++++ sope-appserver/NGObjWeb/ChangeLog (copie de travail) +@@ -1,3 +1,9 @@ ++2009-03-24 Wolfgang Sourdeau ++ ++ * SoObjects/SoActionInvocation.m ([SoActionInvocation ++ -bindToObject:inContext:]): do not retain methodObject when ++ instantiated since it is not autoreleased. ++ + 2008-12-11 Helge Hess + * WOHttpAdaptor/WOHttpAdaptor.m: properly embed threaded request +@@ -3,4 +9,9 @@ handler in a top-level pool (v4.7.27) +2008-09-01 Ludovic Marcotte @@ -3892,11 +3922,10 @@ Index: sope-appserver/NGObjWeb/ChangeLog + 2008-05-21 Sebastian Reitenbach - * WOHTTPURLHandle.m: add 'query' component of URL to request path Index: sope-appserver/NGObjWeb/DAVPropMap.plist =================================================================== ---- sope-appserver/NGObjWeb/DAVPropMap.plist (revision 1632) -+++ sope-appserver/NGObjWeb/DAVPropMap.plist (working copy) +--- sope-appserver/NGObjWeb/DAVPropMap.plist (révision 1632) ++++ sope-appserver/NGObjWeb/DAVPropMap.plist (copie de travail) @@ -24,13 +24,19 @@ "{DAV:}status" = "davStatus"; "{http://apache.org/dav/props/}executable" = "davIsExecutable"; @@ -3979,8 +4008,8 @@ Index: sope-appserver/NGObjWeb/DAVPropMap.plist "{http://groupdav.org/}component-set" = gdavComponentSet; Index: sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m =================================================================== ---- sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m (revision 1632) -+++ sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m (working copy) +--- sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m (révision 1632) ++++ sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m (copie de travail) @@ -655,6 +655,7 @@ if (self->responses == nil) self->responses = [[NSMutableArray alloc] initWithCapacity:64]; @@ -3991,8 +4020,8 @@ Index: sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m case 'n': Index: sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m =================================================================== ---- sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m (revision 1632) -+++ sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m (working copy) +--- sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m (révision 1632) ++++ sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m (copie de travail) @@ -1523,16 +1523,16 @@ - (id)doREPORT:(WOContext *)_ctx { id domDocument; @@ -4079,8 +4108,8 @@ Index: sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m /* DAV access control lists */ Index: sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m =================================================================== ---- sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m (revision 1632) -+++ sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m (working copy) +--- sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m (révision 1632) ++++ sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m (copie de travail) @@ -277,7 +277,8 @@ ok = [self renderLockToken:_object inContext:_ctx]; break; @@ -4093,8 +4122,8 @@ Index: sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m ok = [self renderStatusResult:_object Index: sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h =================================================================== ---- sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h (revision 1632) -+++ sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h (working copy) +--- sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h (révision 1632) ++++ sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h (copie de travail) @@ -62,6 +62,7 @@ properties:(NSDictionary *)_props inContext:(id)_ctx; @@ -4105,8 +4134,8 @@ Index: sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h inContext:(id)_ctx; Index: sope-appserver/NGObjWeb/WODirectAction.m =================================================================== ---- sope-appserver/NGObjWeb/WODirectAction.m (revision 1632) -+++ sope-appserver/NGObjWeb/WODirectAction.m (working copy) +--- sope-appserver/NGObjWeb/WODirectAction.m (révision 1632) ++++ sope-appserver/NGObjWeb/WODirectAction.m (copie de travail) @@ -46,7 +46,7 @@ } - (id)initWithContext:(WOContext *)_ctx { @@ -4140,8 +4169,8 @@ Index: sope-appserver/NGObjWeb/WODirectAction.m Index: sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m =================================================================== ---- sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m (revision 1632) -+++ sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m (working copy) +--- sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m (révision 1632) ++++ sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m (copie de travail) @@ -216,6 +216,12 @@ assocCount++; } @@ -4157,8 +4186,8 @@ Index: sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m Index: sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m =================================================================== ---- sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m (revision 1632) -+++ sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m (working copy) +--- sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m (révision 1632) ++++ sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m (copie de travail) @@ -41,6 +41,7 @@ WOAssociation *string; WOAssociation *target; @@ -4190,8 +4219,8 @@ Index: sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m return NO; Index: sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h =================================================================== ---- sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h (revision 1632) -+++ sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h (working copy) +--- sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h (révision 1632) ++++ sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h (copie de travail) @@ -41,7 +41,8 @@ WOAssociation *pageName; WOAssociation *actionClass; @@ -4204,8 +4233,8 @@ Index: sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h /* 'ivar' associations */ Index: sope-appserver/NGObjWeb/SoObjects/SoObject.m =================================================================== ---- sope-appserver/NGObjWeb/SoObjects/SoObject.m (revision 1632) -+++ sope-appserver/NGObjWeb/SoObjects/SoObject.m (working copy) +--- sope-appserver/NGObjWeb/SoObjects/SoObject.m (révision 1632) ++++ sope-appserver/NGObjWeb/SoObjects/SoObject.m (copie de travail) @@ -39,22 +39,34 @@ static int debugLookup = -1; static int debugBaseURL = -1; @@ -4353,10 +4382,23 @@ Index: sope-appserver/NGObjWeb/SoObjects/SoObject.m } } +Index: sope-appserver/NGObjWeb/SoObjects/SoActionInvocation.m +=================================================================== +--- sope-appserver/NGObjWeb/SoObjects/SoActionInvocation.m (révision 1632) ++++ sope-appserver/NGObjWeb/SoObjects/SoActionInvocation.m (copie de travail) +@@ -338,7 +338,7 @@ + inv->actionName = [self->actionName copy]; + inv->argumentSpecifications = [self->argumentSpecifications copy]; + +- inv->methodObject = [[inv instantiateMethodInContext:_ctx] retain]; ++ inv->methodObject = [inv instantiateMethodInContext:_ctx]; + if (inv->methodObject == nil) { + [self errorWithFormat:@"did not find method '%@'", [self actionClassName]]; + return nil; Index: sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m =================================================================== ---- sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m (revision 1632) -+++ sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m (working copy) +--- sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m (révision 1632) ++++ sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m (copie de travail) @@ -195,7 +195,8 @@ isCreateIfMissingMethod = YES; else if ([m isEqualToString:@"PROPPATCH"]) @@ -4369,8 +4411,8 @@ Index: sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m // TODO: the following are only create-if-missing on the target! Index: sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m =================================================================== ---- sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m (revision 1632) -+++ sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m (working copy) +--- sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m (révision 1632) ++++ sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m (copie de travail) @@ -32,6 +32,7 @@ #include #include @@ -4394,8 +4436,8 @@ Index: sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m @implementation WOCoreApplication(SimpleParserSelection) Index: sope-appserver/NGObjWeb/Defaults.plist =================================================================== ---- sope-appserver/NGObjWeb/Defaults.plist (revision 1632) -+++ sope-appserver/NGObjWeb/Defaults.plist (working copy) +--- sope-appserver/NGObjWeb/Defaults.plist (révision 1632) ++++ sope-appserver/NGObjWeb/Defaults.plist (copie de travail) @@ -216,7 +216,7 @@ SoWebDAVDisableCrossHostMoveCheck = NO; @@ -4415,8 +4457,8 @@ Index: sope-appserver/NGObjWeb/Defaults.plist DELETE, Index: sope-appserver/NGObjWeb/WORequest.m =================================================================== ---- sope-appserver/NGObjWeb/WORequest.m (revision 1632) -+++ sope-appserver/NGObjWeb/WORequest.m (working copy) +--- sope-appserver/NGObjWeb/WORequest.m (révision 1632) ++++ sope-appserver/NGObjWeb/WORequest.m (copie de travail) @@ -597,6 +597,8 @@ if (r.length > 0) language = [language substringToIndex:r.location]; @@ -4428,8 +4470,8 @@ Index: sope-appserver/NGObjWeb/WORequest.m if ((tmp = [self languageForBrowserLanguageCode:language])) Index: sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h =================================================================== ---- sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h (revision 1632) -+++ sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h (working copy) +--- sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h (révision 1632) ++++ sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h (copie de travail) @@ -62,6 +62,10 @@ /* RFC 3253 (DeltaV) */ NGHttpMethod_REPORT, @@ -4443,8 +4485,8 @@ Index: sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h Index: sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.m =================================================================== ---- sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.m (revision 1632) -+++ sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.m (working copy) +--- sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.m (révision 1632) ++++ sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.m (copie de travail) @@ -59,6 +59,10 @@ /* RFC 3253 (DeltaV) */ @"REPORT", From 9bc1a1fbe1c1e1969fca51950c11a81e87fe95f0 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 13:43:19 +0000 Subject: [PATCH 08/36] Monotone-Parent: 478e5eec344abe2e6946e22b5c853865f80a2b66 Monotone-Revision: 6e583ecae28dc18e9f816d9d06c33fc5b047103a Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T13:43:19 Monotone-Branch: ca.inverse.sogo --- SOPE/NGCards/ChangeLog | 11 +++++++++++ SOPE/NGCards/iCalDailyRecurrenceCalculator.m | 1 + SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m | 1 + UI/Scheduler/UIxCalListingActions.m | 4 +--- sogo.spec | 7 +++++-- 5 files changed, 19 insertions(+), 5 deletions(-) diff --git a/SOPE/NGCards/ChangeLog b/SOPE/NGCards/ChangeLog index ed8f6fcdc..09e7074bc 100644 --- a/SOPE/NGCards/ChangeLog +++ b/SOPE/NGCards/ChangeLog @@ -1,3 +1,14 @@ +2009-03-24 Wolfgang Sourdeau + + * iCalWeeklyRecurrenceCalculator.m + ([iCalWeeklyRecurrenceCalculator + -recurrenceRangesWithinCalendarDateRange:_r]): same as below. + + * iCalDailyRecurrenceCalculator.m ([iCalDailyRecurrenceCalculator + -recurrenceRangesWithinCalendarDateRange:_r]): autorelease + currentStartDate when instantiated from a copy of firDate, to + avoid a leak. + 2009-02-06 Wolfgang Sourdeau * CardElement.m ([CardElement -setParent:aParent]): no longer diff --git a/SOPE/NGCards/iCalDailyRecurrenceCalculator.m b/SOPE/NGCards/iCalDailyRecurrenceCalculator.m index 7cd4d6849..233f531e1 100644 --- a/SOPE/NGCards/iCalDailyRecurrenceCalculator.m +++ b/SOPE/NGCards/iCalDailyRecurrenceCalculator.m @@ -80,6 +80,7 @@ } currentStartDate = [firStart copy]; + [currentStartDate autorelease]; ranges = [NSMutableArray array]; i = 1; diff --git a/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m b/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m index f5303deaf..6b673464e 100644 --- a/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m +++ b/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m @@ -87,6 +87,7 @@ } currentStartDate = [firStart copy]; + [currentStartDate autorelease]; ranges = [NSMutableArray array]; byDayMask = [rrule byDayMask]; i = 1; diff --git a/UI/Scheduler/UIxCalListingActions.m b/UI/Scheduler/UIxCalListingActions.m index 85ed4e5d3..82d950c9c 100644 --- a/UI/Scheduler/UIxCalListingActions.m +++ b/UI/Scheduler/UIxCalListingActions.m @@ -90,7 +90,7 @@ static NSArray *tasksFields = nil; endDate = nil; ASSIGN (request, newRequest); user = [[self context] activeUser]; - dateFormatter = [user dateFormatterInContext: context]; + ASSIGN (dateFormatter, [user dateFormatterInContext: context]); ASSIGN (userTimeZone, [user timeZone]); dayBasedView = NO; } @@ -103,8 +103,6 @@ static NSArray *tasksFields = nil; [dateFormatter release]; [request release]; [componentsData release]; - [startDate release]; - [endDate release]; [userTimeZone release]; [super dealloc]; } diff --git a/sogo.spec b/sogo.spec index 044f9af60..315d2141a 100644 --- a/sogo.spec +++ b/sogo.spec @@ -222,8 +222,11 @@ if ! id sogo >& /dev/null; then /usr/sbin/adduser sogo > /dev/null 2>&1; fi /sbin/chkconfig --add sogod %preun -/sbin/chkconfig --del sogod -/sbin/service sogod stop > /dev/null 2>&1 +if [ "$1" == "0" ] +then + /sbin/chkconfig --del sogod + /sbin/service sogod stop > /dev/null 2>&1 +fi %postun if test "$1" = "0" From 39cfaae6ec0f30e691e659868d0395095a76d847 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 13:45:32 +0000 Subject: [PATCH 09/36] reversed patch Monotone-Parent: 6e583ecae28dc18e9f816d9d06c33fc5b047103a Monotone-Revision: 3a3837b97a228bb1e5d1e55f692eaaded56ed2f7 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T13:45:32 Monotone-Branch: ca.inverse.sogo --- SOPE/NGCards/ChangeLog | 11 ----------- SOPE/NGCards/iCalDailyRecurrenceCalculator.m | 1 - SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m | 1 - UI/Scheduler/UIxCalListingActions.m | 4 +++- sogo.spec | 7 ++----- 5 files changed, 5 insertions(+), 19 deletions(-) diff --git a/SOPE/NGCards/ChangeLog b/SOPE/NGCards/ChangeLog index 09e7074bc..ed8f6fcdc 100644 --- a/SOPE/NGCards/ChangeLog +++ b/SOPE/NGCards/ChangeLog @@ -1,14 +1,3 @@ -2009-03-24 Wolfgang Sourdeau - - * iCalWeeklyRecurrenceCalculator.m - ([iCalWeeklyRecurrenceCalculator - -recurrenceRangesWithinCalendarDateRange:_r]): same as below. - - * iCalDailyRecurrenceCalculator.m ([iCalDailyRecurrenceCalculator - -recurrenceRangesWithinCalendarDateRange:_r]): autorelease - currentStartDate when instantiated from a copy of firDate, to - avoid a leak. - 2009-02-06 Wolfgang Sourdeau * CardElement.m ([CardElement -setParent:aParent]): no longer diff --git a/SOPE/NGCards/iCalDailyRecurrenceCalculator.m b/SOPE/NGCards/iCalDailyRecurrenceCalculator.m index 233f531e1..7cd4d6849 100644 --- a/SOPE/NGCards/iCalDailyRecurrenceCalculator.m +++ b/SOPE/NGCards/iCalDailyRecurrenceCalculator.m @@ -80,7 +80,6 @@ } currentStartDate = [firStart copy]; - [currentStartDate autorelease]; ranges = [NSMutableArray array]; i = 1; diff --git a/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m b/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m index 6b673464e..f5303deaf 100644 --- a/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m +++ b/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m @@ -87,7 +87,6 @@ } currentStartDate = [firStart copy]; - [currentStartDate autorelease]; ranges = [NSMutableArray array]; byDayMask = [rrule byDayMask]; i = 1; diff --git a/UI/Scheduler/UIxCalListingActions.m b/UI/Scheduler/UIxCalListingActions.m index 82d950c9c..85ed4e5d3 100644 --- a/UI/Scheduler/UIxCalListingActions.m +++ b/UI/Scheduler/UIxCalListingActions.m @@ -90,7 +90,7 @@ static NSArray *tasksFields = nil; endDate = nil; ASSIGN (request, newRequest); user = [[self context] activeUser]; - ASSIGN (dateFormatter, [user dateFormatterInContext: context]); + dateFormatter = [user dateFormatterInContext: context]; ASSIGN (userTimeZone, [user timeZone]); dayBasedView = NO; } @@ -103,6 +103,8 @@ static NSArray *tasksFields = nil; [dateFormatter release]; [request release]; [componentsData release]; + [startDate release]; + [endDate release]; [userTimeZone release]; [super dealloc]; } diff --git a/sogo.spec b/sogo.spec index 315d2141a..044f9af60 100644 --- a/sogo.spec +++ b/sogo.spec @@ -222,11 +222,8 @@ if ! id sogo >& /dev/null; then /usr/sbin/adduser sogo > /dev/null 2>&1; fi /sbin/chkconfig --add sogod %preun -if [ "$1" == "0" ] -then - /sbin/chkconfig --del sogod - /sbin/service sogod stop > /dev/null 2>&1 -fi +/sbin/chkconfig --del sogod +/sbin/service sogod stop > /dev/null 2>&1 %postun if test "$1" = "0" From 8aadf63f82baed83273fde6355ab20489b4f8a63 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 13:45:46 +0000 Subject: [PATCH 10/36] Monotone-Parent: 3a3837b97a228bb1e5d1e55f692eaaded56ed2f7 Monotone-Revision: 84ef38aac8dcb308bcabb407f3172c53ac0f05b2 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T13:45:46 Monotone-Branch: ca.inverse.sogo --- SOPE/NGCards/ChangeLog | 11 +++++++++++ SOPE/NGCards/iCalDailyRecurrenceCalculator.m | 1 + SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m | 1 + 3 files changed, 13 insertions(+) diff --git a/SOPE/NGCards/ChangeLog b/SOPE/NGCards/ChangeLog index ed8f6fcdc..09e7074bc 100644 --- a/SOPE/NGCards/ChangeLog +++ b/SOPE/NGCards/ChangeLog @@ -1,3 +1,14 @@ +2009-03-24 Wolfgang Sourdeau + + * iCalWeeklyRecurrenceCalculator.m + ([iCalWeeklyRecurrenceCalculator + -recurrenceRangesWithinCalendarDateRange:_r]): same as below. + + * iCalDailyRecurrenceCalculator.m ([iCalDailyRecurrenceCalculator + -recurrenceRangesWithinCalendarDateRange:_r]): autorelease + currentStartDate when instantiated from a copy of firDate, to + avoid a leak. + 2009-02-06 Wolfgang Sourdeau * CardElement.m ([CardElement -setParent:aParent]): no longer diff --git a/SOPE/NGCards/iCalDailyRecurrenceCalculator.m b/SOPE/NGCards/iCalDailyRecurrenceCalculator.m index 7cd4d6849..233f531e1 100644 --- a/SOPE/NGCards/iCalDailyRecurrenceCalculator.m +++ b/SOPE/NGCards/iCalDailyRecurrenceCalculator.m @@ -80,6 +80,7 @@ } currentStartDate = [firStart copy]; + [currentStartDate autorelease]; ranges = [NSMutableArray array]; i = 1; diff --git a/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m b/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m index f5303deaf..6b673464e 100644 --- a/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m +++ b/SOPE/NGCards/iCalWeeklyRecurrenceCalculator.m @@ -87,6 +87,7 @@ } currentStartDate = [firStart copy]; + [currentStartDate autorelease]; ranges = [NSMutableArray array]; byDayMask = [rrule byDayMask]; i = 1; From d3f53a5c195512a8f96ad1b043519b66545d29b8 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 13:47:11 +0000 Subject: [PATCH 11/36] Monotone-Parent: 84ef38aac8dcb308bcabb407f3172c53ac0f05b2 Monotone-Revision: 43675f1618c28a385375562d6eaf3afabaa316ae Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T13:47:11 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 8 ++++++++ UI/Scheduler/UIxCalListingActions.m | 4 +--- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index dfe5f1f99..070de71ec 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2009-03-24 Wolfgang Sourdeau + + * UI/Scheduler/UIxCalListingActions.m ([UIxCalListingActions + -initWithRequest:newRequest]): retain dateFormatter, since it is + released in -dealloc. + ([UIxCalListingActions -dealloc]): do not release startDate and + endDate since they are not retained. + 2009-03-23 Francis Lachapelle * SoObjects/Appointments/SOGoAppointmentObject.m diff --git a/UI/Scheduler/UIxCalListingActions.m b/UI/Scheduler/UIxCalListingActions.m index 85ed4e5d3..82d950c9c 100644 --- a/UI/Scheduler/UIxCalListingActions.m +++ b/UI/Scheduler/UIxCalListingActions.m @@ -90,7 +90,7 @@ static NSArray *tasksFields = nil; endDate = nil; ASSIGN (request, newRequest); user = [[self context] activeUser]; - dateFormatter = [user dateFormatterInContext: context]; + ASSIGN (dateFormatter, [user dateFormatterInContext: context]); ASSIGN (userTimeZone, [user timeZone]); dayBasedView = NO; } @@ -103,8 +103,6 @@ static NSArray *tasksFields = nil; [dateFormatter release]; [request release]; [componentsData release]; - [startDate release]; - [endDate release]; [userTimeZone release]; [super dealloc]; } From f5a98f3571983c61bba004985c1c64bd05b698b2 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 14:05:55 +0000 Subject: [PATCH 12/36] Monotone-Parent: 43675f1618c28a385375562d6eaf3afabaa316ae Monotone-Revision: 261d328a4a30eba63838d32540b23a78ce2a3840 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T14:05:55 Monotone-Branch: ca.inverse.sogo --- UI/WebServerResources/GNUmakefile | 2 +- sogo.spec | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/UI/WebServerResources/GNUmakefile b/UI/WebServerResources/GNUmakefile index b2e166e74..36c2bab6f 100644 --- a/UI/WebServerResources/GNUmakefile +++ b/UI/WebServerResources/GNUmakefile @@ -2,7 +2,7 @@ include ../common.make -WEBSERVER_RESOURCE_FILES = $(shell ls *css *ico *js *.jpg *gif *png *html *txt) +WEBSERVER_RESOURCE_FILES = $(shell ls *css *ico *js *gif *png *html *txt) all :: diff --git a/sogo.spec b/sogo.spec index 044f9af60..315d2141a 100644 --- a/sogo.spec +++ b/sogo.spec @@ -222,8 +222,11 @@ if ! id sogo >& /dev/null; then /usr/sbin/adduser sogo > /dev/null 2>&1; fi /sbin/chkconfig --add sogod %preun -/sbin/chkconfig --del sogod -/sbin/service sogod stop > /dev/null 2>&1 +if [ "$1" == "0" ] +then + /sbin/chkconfig --del sogod + /sbin/service sogod stop > /dev/null 2>&1 +fi %postun if test "$1" = "0" From 20adc66b93c3dfb26aed955d11896557aedb450d Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 14:25:09 +0000 Subject: [PATCH 13/36] Monotone-Parent: 261d328a4a30eba63838d32540b23a78ce2a3840 Monotone-Revision: e0570f48ebcd0056aa949c6b4c5df7386238e282 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T14:25:09 Monotone-Branch: ca.inverse.sogo --- SOPE/sope-patchset-r1632.diff | 290 +++++++++++++++++++--------------- 1 file changed, 160 insertions(+), 130 deletions(-) diff --git a/SOPE/sope-patchset-r1632.diff b/SOPE/sope-patchset-r1632.diff index 56a664ed6..d0720199f 100644 --- a/SOPE/sope-patchset-r1632.diff +++ b/SOPE/sope-patchset-r1632.diff @@ -1,7 +1,7 @@ Index: sope-gdl1/PostgreSQL/PostgreSQL72Channel.m =================================================================== ---- sope-gdl1/PostgreSQL/PostgreSQL72Channel.m (révision 1632) -+++ sope-gdl1/PostgreSQL/PostgreSQL72Channel.m (copie de travail) +--- sope-gdl1/PostgreSQL/PostgreSQL72Channel.m (revision 1632) ++++ sope-gdl1/PostgreSQL/PostgreSQL72Channel.m (working copy) @@ -713,6 +713,39 @@ return ms; } @@ -44,8 +44,8 @@ Index: sope-gdl1/PostgreSQL/PostgreSQL72Channel.m @implementation PostgreSQL72Channel(PrimaryKeyGeneration) Index: sope-gdl1/MySQL/MySQL4Channel.m =================================================================== ---- sope-gdl1/MySQL/MySQL4Channel.m (révision 1632) -+++ sope-gdl1/MySQL/MySQL4Channel.m (copie de travail) +--- sope-gdl1/MySQL/MySQL4Channel.m (revision 1632) ++++ sope-gdl1/MySQL/MySQL4Channel.m (working copy) @@ -755,6 +755,39 @@ return pkey; } @@ -88,8 +88,8 @@ Index: sope-gdl1/MySQL/MySQL4Channel.m void __link_MySQL4Channel() { Index: sope-gdl1/GDLAccess/EOAdaptor.m =================================================================== ---- sope-gdl1/GDLAccess/EOAdaptor.m (révision 1632) -+++ sope-gdl1/GDLAccess/EOAdaptor.m (copie de travail) +--- sope-gdl1/GDLAccess/EOAdaptor.m (revision 1632) ++++ sope-gdl1/GDLAccess/EOAdaptor.m (working copy) @@ -202,6 +202,7 @@ if ([_scheme isEqualToString:@"sybase"]) return @"Sybase10"; if ([_scheme isEqualToString:@"sqlite"]) return @"SQLite3"; @@ -100,8 +100,8 @@ Index: sope-gdl1/GDLAccess/EOAdaptor.m NSLog(@"WARNING(%s): asked for 'http' URL, " Index: sope-gdl1/Oracle8/OracleAdaptorChannel.m =================================================================== ---- sope-gdl1/Oracle8/OracleAdaptorChannel.m (révision 1632) -+++ sope-gdl1/Oracle8/OracleAdaptorChannel.m (copie de travail) +--- sope-gdl1/Oracle8/OracleAdaptorChannel.m (revision 1632) ++++ sope-gdl1/Oracle8/OracleAdaptorChannel.m (working copy) @@ -1,7 +1,7 @@ /* ** OracleAdaptorChannel.m @@ -288,8 +288,8 @@ Index: sope-gdl1/Oracle8/OracleAdaptorChannel.m @" c_lastmodified INTEGER NOT NULL,\n" Index: sope-gdl1/Oracle8/OracleAdaptorChannelController.m =================================================================== ---- sope-gdl1/Oracle8/OracleAdaptorChannelController.m (révision 1632) -+++ sope-gdl1/Oracle8/OracleAdaptorChannelController.m (copie de travail) +--- sope-gdl1/Oracle8/OracleAdaptorChannelController.m (revision 1632) ++++ sope-gdl1/Oracle8/OracleAdaptorChannelController.m (working copy) @@ -31,6 +31,8 @@ #import #import @@ -336,8 +336,8 @@ Index: sope-gdl1/Oracle8/OracleAdaptorChannelController.m Index: sope-mime/NGImap4/NGImap4Client.h =================================================================== ---- sope-mime/NGImap4/NGImap4Client.h (révision 1632) -+++ sope-mime/NGImap4/NGImap4Client.h (copie de travail) +--- sope-mime/NGImap4/NGImap4Client.h (revision 1632) ++++ sope-mime/NGImap4/NGImap4Client.h (working copy) @@ -62,6 +62,8 @@ NGImap4ResponseNormalizer *normer; NSMutableArray *responseReceiver; @@ -366,8 +366,8 @@ Index: sope-mime/NGImap4/NGImap4Client.h - (NSDictionary *)copyUid:(unsigned)_uid toFolder:(NSString *)_folder; Index: sope-mime/NGImap4/NGImap4Client.m =================================================================== ---- sope-mime/NGImap4/NGImap4Client.m (révision 1632) -+++ sope-mime/NGImap4/NGImap4Client.m (copie de travail) +--- sope-mime/NGImap4/NGImap4Client.m (revision 1632) ++++ sope-mime/NGImap4/NGImap4Client.m (working copy) @@ -24,6 +24,8 @@ #include "NGImap4Client.h" #include "NGImap4Context.h" @@ -675,8 +675,8 @@ Index: sope-mime/NGImap4/NGImap4Client.m __PRETTY_FUNCTION__, [_exception name], [_exception reason]]; Index: sope-mime/NGImap4/NGSieveClient.m =================================================================== ---- sope-mime/NGImap4/NGSieveClient.m (révision 1632) -+++ sope-mime/NGImap4/NGSieveClient.m (copie de travail) +--- sope-mime/NGImap4/NGSieveClient.m (revision 1632) ++++ sope-mime/NGImap4/NGSieveClient.m (working copy) @@ -294,8 +294,8 @@ return con; } @@ -711,8 +711,8 @@ Index: sope-mime/NGImap4/NGSieveClient.m /* write */ Index: sope-mime/NGImap4/NGImap4Connection.h =================================================================== ---- sope-mime/NGImap4/NGImap4Connection.h (révision 1632) -+++ sope-mime/NGImap4/NGImap4Connection.h (copie de travail) +--- sope-mime/NGImap4/NGImap4Connection.h (revision 1632) ++++ sope-mime/NGImap4/NGImap4Connection.h (working copy) @@ -89,6 +89,7 @@ - (NSArray *)subfoldersForURL:(NSURL *)_url; @@ -723,8 +723,8 @@ Index: sope-mime/NGImap4/NGImap4Connection.h Index: sope-mime/NGImap4/NGImap4Connection.m =================================================================== ---- sope-mime/NGImap4/NGImap4Connection.m (révision 1632) -+++ sope-mime/NGImap4/NGImap4Connection.m (copie de travail) +--- sope-mime/NGImap4/NGImap4Connection.m (revision 1632) ++++ sope-mime/NGImap4/NGImap4Connection.m (working copy) @@ -381,7 +381,7 @@ if (debugCache) [self logWithFormat:@" no folders cached yet .."]; @@ -771,8 +771,8 @@ Index: sope-mime/NGImap4/NGImap4Connection.m - (id)infoForMailboxAtURL:(NSURL *)_url { Index: sope-mime/NGImap4/NGImap4ResponseNormalizer.m =================================================================== ---- sope-mime/NGImap4/NGImap4ResponseNormalizer.m (révision 1632) -+++ sope-mime/NGImap4/NGImap4ResponseNormalizer.m (copie de travail) +--- sope-mime/NGImap4/NGImap4ResponseNormalizer.m (revision 1632) ++++ sope-mime/NGImap4/NGImap4ResponseNormalizer.m (working copy) @@ -292,7 +292,7 @@ /* filter for fetch response @@ -820,8 +820,8 @@ Index: sope-mime/NGImap4/NGImap4ResponseNormalizer.m if (objs) free(objs); Index: sope-mime/NGImap4/NGImap4ResponseParser.m =================================================================== ---- sope-mime/NGImap4/NGImap4ResponseParser.m (révision 1632) -+++ sope-mime/NGImap4/NGImap4ResponseParser.m (copie de travail) +--- sope-mime/NGImap4/NGImap4ResponseParser.m (revision 1632) ++++ sope-mime/NGImap4/NGImap4ResponseParser.m (working copy) @@ -31,6 +31,7 @@ @interface NGImap4ResponseParser(ParsingPrivates) - (BOOL)_parseNumberUntaggedResponse:(NGMutableHashMap *)result_; @@ -1271,8 +1271,8 @@ Index: sope-mime/NGImap4/NGImap4ResponseParser.m self->serverResponseDebug = Index: sope-mime/NGImap4/ChangeLog =================================================================== ---- sope-mime/NGImap4/ChangeLog (révision 1632) -+++ sope-mime/NGImap4/ChangeLog (copie de travail) +--- sope-mime/NGImap4/ChangeLog (revision 1632) ++++ sope-mime/NGImap4/ChangeLog (working copy) @@ -1,3 +1,29 @@ +2008-10-23 Wolfgang Sourdeau + @@ -1305,8 +1305,8 @@ Index: sope-mime/NGImap4/ChangeLog * NGImap4Connection.m: some fix for folders ending with a slash (OGo Index: sope-mime/NGImap4/NGImap4ConnectionManager.m =================================================================== ---- sope-mime/NGImap4/NGImap4ConnectionManager.m (révision 1632) -+++ sope-mime/NGImap4/NGImap4ConnectionManager.m (copie de travail) +--- sope-mime/NGImap4/NGImap4ConnectionManager.m (revision 1632) ++++ sope-mime/NGImap4/NGImap4ConnectionManager.m (working copy) @@ -38,6 +38,9 @@ debugCache = [ud boolForKey:@"NGImap4EnableIMAP4CacheDebug"]; poolingOff = [ud boolForKey:@"NGImap4DisableIMAP4Pooling"]; @@ -1432,8 +1432,8 @@ Index: sope-mime/NGImap4/NGImap4ConnectionManager.m /* client object */ Index: sope-mime/NGImap4/NSString+Imap4.m =================================================================== ---- sope-mime/NGImap4/NSString+Imap4.m (révision 1632) -+++ sope-mime/NGImap4/NSString+Imap4.m (copie de travail) +--- sope-mime/NGImap4/NSString+Imap4.m (revision 1632) ++++ sope-mime/NGImap4/NSString+Imap4.m (working copy) @@ -20,11 +20,56 @@ 02111-1307, USA. */ @@ -1954,8 +1954,8 @@ Index: sope-mime/NGImap4/NSString+Imap4.m +@end /* NSString(Imap4) */ Index: sope-mime/NGMail/NGSmtpClient.m =================================================================== ---- sope-mime/NGMail/NGSmtpClient.m (révision 1632) -+++ sope-mime/NGMail/NGSmtpClient.m (copie de travail) +--- sope-mime/NGMail/NGSmtpClient.m (revision 1632) ++++ sope-mime/NGMail/NGSmtpClient.m (working copy) @@ -24,6 +24,82 @@ #include "NGSmtpReplyCodes.h" #include "common.h" @@ -2110,8 +2110,8 @@ Index: sope-mime/NGMail/NGSmtpClient.m reply = [self receiveReply]; Index: sope-mime/NGMail/NGMailAddressParser.h =================================================================== ---- sope-mime/NGMail/NGMailAddressParser.h (révision 1632) -+++ sope-mime/NGMail/NGMailAddressParser.h (copie de travail) +--- sope-mime/NGMail/NGMailAddressParser.h (revision 1632) ++++ sope-mime/NGMail/NGMailAddressParser.h (working copy) @@ -24,7 +24,9 @@ #import @@ -2148,8 +2148,8 @@ Index: sope-mime/NGMail/NGMailAddressParser.h Index: sope-mime/NGMail/NGMimeMessageGenerator.m =================================================================== ---- sope-mime/NGMail/NGMimeMessageGenerator.m (révision 1632) -+++ sope-mime/NGMail/NGMimeMessageGenerator.m (copie de travail) +--- sope-mime/NGMail/NGMimeMessageGenerator.m (revision 1632) ++++ sope-mime/NGMail/NGMimeMessageGenerator.m (working copy) @@ -86,37 +86,40 @@ char *des = NULL; unsigned int cnt; @@ -2214,8 +2214,8 @@ Index: sope-mime/NGMail/NGMimeMessageGenerator.m unsigned isoEndLen = 2; Index: sope-mime/NGMail/NGMailAddressParser.m =================================================================== ---- sope-mime/NGMail/NGMailAddressParser.m (révision 1632) -+++ sope-mime/NGMail/NGMailAddressParser.m (copie de travail) +--- sope-mime/NGMail/NGMailAddressParser.m (revision 1632) ++++ sope-mime/NGMail/NGMailAddressParser.m (working copy) @@ -52,9 +52,9 @@ StrClass = [NSString class]; } @@ -2359,8 +2359,8 @@ Index: sope-mime/NGMail/NGMailAddressParser.m self->dataPos = 0; Index: sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m =================================================================== ---- sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m (révision 1632) -+++ sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m (copie de travail) +--- sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m (revision 1632) ++++ sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m (working copy) @@ -19,88 +19,45 @@ 02111-1307, USA. */ @@ -2764,8 +2764,8 @@ Index: sope-mime/NGMime/NGMimeRFC822DateHeaderFieldParser.m #if 0 Index: sope-mime/NGMime/NGMimeMultipartBodyParser.m =================================================================== ---- sope-mime/NGMime/NGMimeMultipartBodyParser.m (révision 1632) -+++ sope-mime/NGMime/NGMimeMultipartBodyParser.m (copie de travail) +--- sope-mime/NGMime/NGMimeMultipartBodyParser.m (revision 1632) ++++ sope-mime/NGMime/NGMimeMultipartBodyParser.m (working copy) @@ -428,6 +428,7 @@ NSString *boundary = nil; NSArray *rawBodyParts = nil; @@ -2789,8 +2789,8 @@ Index: sope-mime/NGMime/NGMimeMultipartBodyParser.m if (rawBodyParts) { Index: sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m =================================================================== ---- sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m (révision 1632) -+++ sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m (copie de travail) +--- sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m (revision 1632) ++++ sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m (working copy) @@ -77,6 +77,7 @@ [rfc822Set setGenerator:gen forField:@"bcc"]; [rfc822Set setGenerator:gen forField:Fields->from]; @@ -2801,8 +2801,8 @@ Index: sope-mime/NGMime/NGMimeHeaderFieldGeneratorSet.m Index: sope-mime/NGMime/NGMimeType.m =================================================================== ---- sope-mime/NGMime/NGMimeType.m (révision 1632) -+++ sope-mime/NGMime/NGMimeType.m (copie de travail) +--- sope-mime/NGMime/NGMimeType.m (revision 1632) ++++ sope-mime/NGMime/NGMimeType.m (working copy) @@ -120,28 +120,23 @@ /* some unsupported, but known encoding */ @@ -2899,8 +2899,8 @@ Index: sope-mime/NGMime/NGMimeType.m - (NSString *)stringValue { Index: sope-mime/NGMime/NGMimeBodyPart.m =================================================================== ---- sope-mime/NGMime/NGMimeBodyPart.m (révision 1632) -+++ sope-mime/NGMime/NGMimeBodyPart.m (copie de travail) +--- sope-mime/NGMime/NGMimeBodyPart.m (revision 1632) ++++ sope-mime/NGMime/NGMimeBodyPart.m (working copy) @@ -31,18 +31,6 @@ return 2; } @@ -2937,8 +2937,8 @@ Index: sope-mime/NGMime/NGMimeBodyPart.m - (NSString *)contentId { Index: sope-mime/NGMime/ChangeLog =================================================================== ---- sope-mime/NGMime/ChangeLog (révision 1632) -+++ sope-mime/NGMime/ChangeLog (copie de travail) +--- sope-mime/NGMime/ChangeLog (revision 1632) ++++ sope-mime/NGMime/ChangeLog (working copy) @@ -1,3 +1,25 @@ +2008-09-08 Wolfgang Sourdeau + @@ -2967,8 +2967,8 @@ Index: sope-mime/NGMime/ChangeLog * fixes for OGo bug #789 (reply-to QP encoding) Index: sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m =================================================================== ---- sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m (révision 1632) -+++ sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m (copie de travail) +--- sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m (revision 1632) ++++ sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m (working copy) @@ -36,8 +36,7 @@ NGMimeType *type = nil; // only one content-type field NSString *tmp = nil; @@ -3107,8 +3107,8 @@ Index: sope-mime/NGMime/NGMimeContentTypeHeaderFieldGenerator.m } Index: sope-mime/NGMime/NGMimePartGenerator.m =================================================================== ---- sope-mime/NGMime/NGMimePartGenerator.m (révision 1632) -+++ sope-mime/NGMime/NGMimePartGenerator.m (copie de travail) +--- sope-mime/NGMime/NGMimePartGenerator.m (revision 1632) ++++ sope-mime/NGMime/NGMimePartGenerator.m (working copy) @@ -155,8 +155,9 @@ BOOL isMultiValue, isFirst; @@ -3132,8 +3132,8 @@ Index: sope-mime/NGMime/NGMimePartGenerator.m Index: sope-mime/NGMime/NGMimeBodyParser.m =================================================================== ---- sope-mime/NGMime/NGMimeBodyParser.m (révision 1632) -+++ sope-mime/NGMime/NGMimeBodyParser.m (copie de travail) +--- sope-mime/NGMime/NGMimeBodyParser.m (revision 1632) ++++ sope-mime/NGMime/NGMimeBodyParser.m (working copy) @@ -67,7 +67,10 @@ if (_data == nil) return nil; @@ -3171,8 +3171,8 @@ Index: sope-mime/NGMime/NGMimeBodyParser.m } Index: sope-mime/NGMime/NGMimePartParser.h =================================================================== ---- sope-mime/NGMime/NGMimePartParser.h (révision 1632) -+++ sope-mime/NGMime/NGMimePartParser.h (copie de travail) +--- sope-mime/NGMime/NGMimePartParser.h (revision 1632) ++++ sope-mime/NGMime/NGMimePartParser.h (working copy) @@ -117,6 +117,7 @@ BOOL parserParseRawBodyDataOfPart:1; BOOL parserBodyParserForPart:1; @@ -3193,8 +3193,8 @@ Index: sope-mime/NGMime/NGMimePartParser.h @interface NSObject(NGMimePartParser) Index: sope-mime/NGMime/NGMimePartParser.m =================================================================== ---- sope-mime/NGMime/NGMimePartParser.m (révision 1632) -+++ sope-mime/NGMime/NGMimePartParser.m (copie de travail) +--- sope-mime/NGMime/NGMimePartParser.m (revision 1632) ++++ sope-mime/NGMime/NGMimePartParser.m (working copy) @@ -227,7 +227,7 @@ } @@ -3218,8 +3218,8 @@ Index: sope-mime/NGMime/NGMimePartParser.m : [NGMimeType mimeType:[ctype stringValue]]; Index: sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m =================================================================== ---- sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m (révision 1632) -+++ sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m (copie de travail) +--- sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m (revision 1632) ++++ sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m (working copy) @@ -105,10 +105,10 @@ } @@ -3304,8 +3304,8 @@ Index: sope-mime/NGMime/NGMimeAddressHeaderFieldGenerator.m return data; Index: sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m =================================================================== ---- sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m (révision 1632) -+++ sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m (copie de travail) +--- sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m (revision 1632) ++++ sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m (working copy) @@ -49,80 +49,70 @@ // TODO: move the stuff below to some NSString or NSData category? @@ -3440,8 +3440,8 @@ Index: sope-mime/NGMime/NGMimeContentDispositionHeaderFieldGenerator.m } Index: sope-core/NGExtensions/NGExtensions/NSString+Ext.h =================================================================== ---- sope-core/NGExtensions/NGExtensions/NSString+Ext.h (révision 1632) -+++ sope-core/NGExtensions/NGExtensions/NSString+Ext.h (copie de travail) +--- sope-core/NGExtensions/NGExtensions/NSString+Ext.h (revision 1632) ++++ sope-core/NGExtensions/NGExtensions/NSString+Ext.h (working copy) @@ -30,6 +30,7 @@ @interface NSString(GSAdditions) @@ -3478,8 +3478,8 @@ Index: sope-core/NGExtensions/NGExtensions/NSString+Ext.h /* specific to libFoundation */ Index: sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m =================================================================== ---- sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m (révision 1632) -+++ sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m (copie de travail) +--- sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m (revision 1632) ++++ sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m (working copy) @@ -39,18 +39,6 @@ : (NSString *)[[self copy] autorelease]; } @@ -3567,8 +3567,8 @@ Index: sope-core/NGExtensions/FdExt.subproj/NSString+Ext.m - (BOOL)isAbsoluteURL Index: sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m =================================================================== ---- sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m (révision 1632) -+++ sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m (copie de travail) +--- sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m (revision 1632) ++++ sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m (working copy) @@ -140,8 +140,12 @@ @@ -3608,10 +3608,27 @@ Index: sope-core/NGExtensions/FdExt.subproj/NSString+Encoding.m } static char *iconv_wrapper(id self, char *_src, unsigned _srcLen, +Index: sope-core/NGExtensions/NGCalendarDateRange.m +=================================================================== +--- sope-core/NGExtensions/NGCalendarDateRange.m (revision 1632) ++++ sope-core/NGExtensions/NGCalendarDateRange.m (working copy) +@@ -50,6 +50,12 @@ + return self; + } + ++- (void)dealloc { ++ [self->startDate release]; ++ [self->endDate release]; ++ [super dealloc]; ++} ++ + /* NSCopying */ + + - (id)copyWithZone:(NSZone *)zone { Index: sope-core/NGExtensions/NGQuotedPrintableCoding.m =================================================================== ---- sope-core/NGExtensions/NGQuotedPrintableCoding.m (révision 1632) -+++ sope-core/NGExtensions/NGQuotedPrintableCoding.m (copie de travail) +--- sope-core/NGExtensions/NGQuotedPrintableCoding.m (revision 1632) ++++ sope-core/NGExtensions/NGQuotedPrintableCoding.m (working copy) @@ -278,7 +278,12 @@ for (cnt = 0; (cnt < _srcLen) && (destCnt < _destLen); cnt++) { @@ -3628,8 +3645,8 @@ Index: sope-core/NGExtensions/NGQuotedPrintableCoding.m ((c > 31) && (c < 61)) || Index: sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m =================================================================== ---- sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m (révision 1632) -+++ sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m (copie de travail) +--- sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m (revision 1632) ++++ sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m (working copy) @@ -19,6 +19,7 @@ 02111-1307, USA. */ @@ -3638,10 +3655,23 @@ Index: sope-core/NGExtensions/EOExt.subproj/EOGlobalID+Ext.m #import #import +Index: sope-core/NGExtensions/ChangeLog +=================================================================== +--- sope-core/NGExtensions/ChangeLog (revision 1632) ++++ sope-core/NGExtensions/ChangeLog (working copy) +@@ -1,3 +1,8 @@ ++2009-03-24 Wolfgang Sourdeau ++ ++ * NGCalendarDateRange.m ([NGCalendarDateRange -dealloc]): release ++ endDate and startDate. ++ + 2008-03-11 Helge Hess + + * FdExt.subproj/NSArray+enumerator.m: fixed for MacOS 10.5 (v4.7.201) Index: sope-core/NGStreams/GNUmakefile.preamble =================================================================== ---- sope-core/NGStreams/GNUmakefile.preamble (révision 1632) -+++ sope-core/NGStreams/GNUmakefile.preamble (copie de travail) +--- sope-core/NGStreams/GNUmakefile.preamble (revision 1632) ++++ sope-core/NGStreams/GNUmakefile.preamble (working copy) @@ -1,7 +1,10 @@ # compilation settings @@ -3655,8 +3685,8 @@ Index: sope-core/NGStreams/GNUmakefile.preamble -I.. Index: sope-xml/libxmlSAXDriver/ChangeLog =================================================================== ---- sope-xml/libxmlSAXDriver/ChangeLog (révision 1632) -+++ sope-xml/libxmlSAXDriver/ChangeLog (copie de travail) +--- sope-xml/libxmlSAXDriver/ChangeLog (revision 1632) ++++ sope-xml/libxmlSAXDriver/ChangeLog (working copy) @@ -1,3 +1,8 @@ +2009-03-24 Wolfgang Sourdeau + @@ -3668,8 +3698,8 @@ Index: sope-xml/libxmlSAXDriver/ChangeLog * libXMLSaxDriver.m: fixed last changes for libFoundation (v4.5.24) Index: sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h =================================================================== ---- sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h (révision 1632) -+++ sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h (copie de travail) +--- sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h (revision 1632) ++++ sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h (working copy) @@ -19,6 +19,8 @@ 02111-1307, USA. */ @@ -3690,8 +3720,8 @@ Index: sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.h id entityResolver; Index: sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m =================================================================== ---- sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m (révision 1632) -+++ sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m (copie de travail) +--- sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m (revision 1632) ++++ sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m (working copy) @@ -30,6 +30,12 @@ #include #include @@ -3750,8 +3780,8 @@ Index: sope-xml/libxmlSAXDriver/libxmlHTMLSAXDriver.m - (void)tearDownParser { Index: sope-xml/libxmlSAXDriver/libxmlSAXDriver.m =================================================================== ---- sope-xml/libxmlSAXDriver/libxmlSAXDriver.m (révision 1632) -+++ sope-xml/libxmlSAXDriver/libxmlSAXDriver.m (copie de travail) +--- sope-xml/libxmlSAXDriver/libxmlSAXDriver.m (revision 1632) ++++ sope-xml/libxmlSAXDriver/libxmlSAXDriver.m (working copy) @@ -614,7 +614,7 @@ xmlParseDocument(ctxt); @@ -3780,8 +3810,8 @@ Index: sope-xml/libxmlSAXDriver/libxmlSAXDriver.m Index: sope-appserver/mod_ngobjweb/config.c =================================================================== ---- sope-appserver/mod_ngobjweb/config.c (révision 1632) -+++ sope-appserver/mod_ngobjweb/config.c (copie de travail) +--- sope-appserver/mod_ngobjweb/config.c (revision 1632) ++++ sope-appserver/mod_ngobjweb/config.c (working copy) @@ -21,7 +21,7 @@ #include "common.h" @@ -3793,8 +3823,8 @@ Index: sope-appserver/mod_ngobjweb/config.c if (buf == NULL) Index: sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c =================================================================== ---- sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c (révision 1632) -+++ sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c (copie de travail) +--- sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c (revision 1632) ++++ sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c (working copy) @@ -23,6 +23,7 @@ #include #include @@ -3805,8 +3835,8 @@ Index: sope-appserver/mod_ngobjweb/NGBufferedDescriptor.c // returns the number of bytes which where read from the buffer Index: sope-appserver/mod_ngobjweb/GNUmakefile =================================================================== ---- sope-appserver/mod_ngobjweb/GNUmakefile (révision 1632) -+++ sope-appserver/mod_ngobjweb/GNUmakefile (copie de travail) +--- sope-appserver/mod_ngobjweb/GNUmakefile (revision 1632) ++++ sope-appserver/mod_ngobjweb/GNUmakefile (working copy) @@ -82,7 +82,7 @@ CFLAGS = -Wall -I. -fPIC \ @@ -3828,8 +3858,8 @@ Index: sope-appserver/mod_ngobjweb/GNUmakefile $(INSTALL_PROGRAM) $(product) /usr/libexec/httpd/ Index: sope-appserver/NGObjWeb/GNUmakefile.postamble =================================================================== ---- sope-appserver/NGObjWeb/GNUmakefile.postamble (révision 1632) -+++ sope-appserver/NGObjWeb/GNUmakefile.postamble (copie de travail) +--- sope-appserver/NGObjWeb/GNUmakefile.postamble (revision 1632) ++++ sope-appserver/NGObjWeb/GNUmakefile.postamble (working copy) @@ -23,14 +23,20 @@ # install makefiles @@ -3860,8 +3890,8 @@ Index: sope-appserver/NGObjWeb/GNUmakefile.postamble + $(DESTDIR)/$(GNUSTEP_MAKEFILES)/wobundle.make Index: sope-appserver/NGObjWeb/WOContext.m =================================================================== ---- sope-appserver/NGObjWeb/WOContext.m (révision 1632) -+++ sope-appserver/NGObjWeb/WOContext.m (copie de travail) +--- sope-appserver/NGObjWeb/WOContext.m (revision 1632) ++++ sope-appserver/NGObjWeb/WOContext.m (working copy) @@ -64,11 +64,13 @@ static BOOL testNSURLs = NO; static BOOL newCURLStyle = NO; @@ -3900,8 +3930,8 @@ Index: sope-appserver/NGObjWeb/WOContext.m serverURL = [@"http://" stringByAppendingString:host]; Index: sope-appserver/NGObjWeb/ChangeLog =================================================================== ---- sope-appserver/NGObjWeb/ChangeLog (révision 1632) -+++ sope-appserver/NGObjWeb/ChangeLog (copie de travail) +--- sope-appserver/NGObjWeb/ChangeLog (revision 1632) ++++ sope-appserver/NGObjWeb/ChangeLog (working copy) @@ -1,3 +1,9 @@ +2009-03-24 Wolfgang Sourdeau + @@ -3924,8 +3954,8 @@ Index: sope-appserver/NGObjWeb/ChangeLog Index: sope-appserver/NGObjWeb/DAVPropMap.plist =================================================================== ---- sope-appserver/NGObjWeb/DAVPropMap.plist (révision 1632) -+++ sope-appserver/NGObjWeb/DAVPropMap.plist (copie de travail) +--- sope-appserver/NGObjWeb/DAVPropMap.plist (revision 1632) ++++ sope-appserver/NGObjWeb/DAVPropMap.plist (working copy) @@ -24,13 +24,19 @@ "{DAV:}status" = "davStatus"; "{http://apache.org/dav/props/}executable" = "davIsExecutable"; @@ -4008,8 +4038,8 @@ Index: sope-appserver/NGObjWeb/DAVPropMap.plist "{http://groupdav.org/}component-set" = gdavComponentSet; Index: sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m =================================================================== ---- sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m (révision 1632) -+++ sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m (copie de travail) +--- sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m (revision 1632) ++++ sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m (working copy) @@ -655,6 +655,7 @@ if (self->responses == nil) self->responses = [[NSMutableArray alloc] initWithCapacity:64]; @@ -4020,8 +4050,8 @@ Index: sope-appserver/NGObjWeb/WebDAV/SaxDAVHandler.m case 'n': Index: sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m =================================================================== ---- sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m (révision 1632) -+++ sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m (copie de travail) +--- sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m (revision 1632) ++++ sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m (working copy) @@ -1523,16 +1523,16 @@ - (id)doREPORT:(WOContext *)_ctx { id domDocument; @@ -4108,8 +4138,8 @@ Index: sope-appserver/NGObjWeb/WebDAV/SoObjectWebDAVDispatcher.m /* DAV access control lists */ Index: sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m =================================================================== ---- sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m (révision 1632) -+++ sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m (copie de travail) +--- sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m (revision 1632) ++++ sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m (working copy) @@ -277,7 +277,8 @@ ok = [self renderLockToken:_object inContext:_ctx]; break; @@ -4122,8 +4152,8 @@ Index: sope-appserver/NGObjWeb/WebDAV/SoWebDAVRenderer.m ok = [self renderStatusResult:_object Index: sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h =================================================================== ---- sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h (révision 1632) -+++ sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h (copie de travail) +--- sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h (revision 1632) ++++ sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h (working copy) @@ -62,6 +62,7 @@ properties:(NSDictionary *)_props inContext:(id)_ctx; @@ -4134,8 +4164,8 @@ Index: sope-appserver/NGObjWeb/WebDAV/SoObject+SoDAV.h inContext:(id)_ctx; Index: sope-appserver/NGObjWeb/WODirectAction.m =================================================================== ---- sope-appserver/NGObjWeb/WODirectAction.m (révision 1632) -+++ sope-appserver/NGObjWeb/WODirectAction.m (copie de travail) +--- sope-appserver/NGObjWeb/WODirectAction.m (revision 1632) ++++ sope-appserver/NGObjWeb/WODirectAction.m (working copy) @@ -46,7 +46,7 @@ } - (id)initWithContext:(WOContext *)_ctx { @@ -4169,8 +4199,8 @@ Index: sope-appserver/NGObjWeb/WODirectAction.m Index: sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m =================================================================== ---- sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m (révision 1632) -+++ sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m (copie de travail) +--- sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m (revision 1632) ++++ sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m (working copy) @@ -216,6 +216,12 @@ assocCount++; } @@ -4186,8 +4216,8 @@ Index: sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.m Index: sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m =================================================================== ---- sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m (révision 1632) -+++ sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m (copie de travail) +--- sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m (revision 1632) ++++ sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m (working copy) @@ -41,6 +41,7 @@ WOAssociation *string; WOAssociation *target; @@ -4219,8 +4249,8 @@ Index: sope-appserver/NGObjWeb/DynamicElements/_WOComplexHyperlink.m return NO; Index: sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h =================================================================== ---- sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h (révision 1632) -+++ sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h (copie de travail) +--- sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h (revision 1632) ++++ sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h (working copy) @@ -41,7 +41,8 @@ WOAssociation *pageName; WOAssociation *actionClass; @@ -4233,8 +4263,8 @@ Index: sope-appserver/NGObjWeb/DynamicElements/WOHyperlinkInfo.h /* 'ivar' associations */ Index: sope-appserver/NGObjWeb/SoObjects/SoObject.m =================================================================== ---- sope-appserver/NGObjWeb/SoObjects/SoObject.m (révision 1632) -+++ sope-appserver/NGObjWeb/SoObjects/SoObject.m (copie de travail) +--- sope-appserver/NGObjWeb/SoObjects/SoObject.m (revision 1632) ++++ sope-appserver/NGObjWeb/SoObjects/SoObject.m (working copy) @@ -39,22 +39,34 @@ static int debugLookup = -1; static int debugBaseURL = -1; @@ -4384,8 +4414,8 @@ Index: sope-appserver/NGObjWeb/SoObjects/SoObject.m Index: sope-appserver/NGObjWeb/SoObjects/SoActionInvocation.m =================================================================== ---- sope-appserver/NGObjWeb/SoObjects/SoActionInvocation.m (révision 1632) -+++ sope-appserver/NGObjWeb/SoObjects/SoActionInvocation.m (copie de travail) +--- sope-appserver/NGObjWeb/SoObjects/SoActionInvocation.m (revision 1632) ++++ sope-appserver/NGObjWeb/SoObjects/SoActionInvocation.m (working copy) @@ -338,7 +338,7 @@ inv->actionName = [self->actionName copy]; inv->argumentSpecifications = [self->argumentSpecifications copy]; @@ -4397,8 +4427,8 @@ Index: sope-appserver/NGObjWeb/SoObjects/SoActionInvocation.m return nil; Index: sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m =================================================================== ---- sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m (révision 1632) -+++ sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m (copie de travail) +--- sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m (revision 1632) ++++ sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m (working copy) @@ -195,7 +195,8 @@ isCreateIfMissingMethod = YES; else if ([m isEqualToString:@"PROPPATCH"]) @@ -4411,8 +4441,8 @@ Index: sope-appserver/NGObjWeb/SoObjects/SoObject+Traversal.m // TODO: the following are only create-if-missing on the target! Index: sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m =================================================================== ---- sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m (révision 1632) -+++ sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m (copie de travail) +--- sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m (revision 1632) ++++ sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m (working copy) @@ -32,6 +32,7 @@ #include #include @@ -4436,8 +4466,8 @@ Index: sope-appserver/NGObjWeb/WOHttpAdaptor/WOHttpTransaction.m @implementation WOCoreApplication(SimpleParserSelection) Index: sope-appserver/NGObjWeb/Defaults.plist =================================================================== ---- sope-appserver/NGObjWeb/Defaults.plist (révision 1632) -+++ sope-appserver/NGObjWeb/Defaults.plist (copie de travail) +--- sope-appserver/NGObjWeb/Defaults.plist (revision 1632) ++++ sope-appserver/NGObjWeb/Defaults.plist (working copy) @@ -216,7 +216,7 @@ SoWebDAVDisableCrossHostMoveCheck = NO; @@ -4457,8 +4487,8 @@ Index: sope-appserver/NGObjWeb/Defaults.plist DELETE, Index: sope-appserver/NGObjWeb/WORequest.m =================================================================== ---- sope-appserver/NGObjWeb/WORequest.m (révision 1632) -+++ sope-appserver/NGObjWeb/WORequest.m (copie de travail) +--- sope-appserver/NGObjWeb/WORequest.m (revision 1632) ++++ sope-appserver/NGObjWeb/WORequest.m (working copy) @@ -597,6 +597,8 @@ if (r.length > 0) language = [language substringToIndex:r.location]; @@ -4470,8 +4500,8 @@ Index: sope-appserver/NGObjWeb/WORequest.m if ((tmp = [self languageForBrowserLanguageCode:language])) Index: sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h =================================================================== ---- sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h (révision 1632) -+++ sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h (copie de travail) +--- sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h (revision 1632) ++++ sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h (working copy) @@ -62,6 +62,10 @@ /* RFC 3253 (DeltaV) */ NGHttpMethod_REPORT, @@ -4485,8 +4515,8 @@ Index: sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.h Index: sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.m =================================================================== ---- sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.m (révision 1632) -+++ sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.m (copie de travail) +--- sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.m (revision 1632) ++++ sope-appserver/NGObjWeb/NGHttp/NGHttpRequest.m (working copy) @@ -59,6 +59,10 @@ /* RFC 3253 (DeltaV) */ @"REPORT", From 927055105054788b1ce802d5394ea4f8302ef78e Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 14:25:44 +0000 Subject: [PATCH 14/36] Monotone-Parent: e0570f48ebcd0056aa949c6b4c5df7386238e282 Monotone-Revision: c899af499a48639ec23979b9d33c7db9843f7110 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T14:25:44 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 4 ++++ SoObjects/SOGo/SOGoUser.m | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 070de71ec..bd1c2c991 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2009-03-24 Wolfgang Sourdeau + * SoObjects/SOGo/SOGoUser.m ([SOGoUser + -_prepareDefaultMailAccounts]): return an autoreleased array to + avoid a leak. + * UI/Scheduler/UIxCalListingActions.m ([UIxCalListingActions -initWithRequest:newRequest]): retain dateFormatter, since it is released in -dealloc. diff --git a/SoObjects/SOGo/SOGoUser.m b/SoObjects/SOGo/SOGoUser.m index 3d4a4a9aa..f725e525a 100644 --- a/SoObjects/SOGo/SOGoUser.m +++ b/SoObjects/SOGo/SOGoUser.m @@ -740,7 +740,7 @@ _timeValue (NSString *key) [mailAccount setObject: identities forKey: @"identities"]; - mailAccounts = [NSMutableArray new]; + mailAccounts = [NSMutableArray array]; [mailAccounts addObject: mailAccount]; return mailAccounts; From 946886ed074652255f2525c4479f52c65a189260 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 14:55:10 +0000 Subject: [PATCH 15/36] reversed patch Monotone-Parent: c899af499a48639ec23979b9d33c7db9843f7110 Monotone-Revision: 066415866c34e37d51f2dd40a9e5f8469c495393 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T14:55:10 Monotone-Branch: ca.inverse.sogo --- sogo.spec | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/sogo.spec b/sogo.spec index 315d2141a..044f9af60 100644 --- a/sogo.spec +++ b/sogo.spec @@ -222,11 +222,8 @@ if ! id sogo >& /dev/null; then /usr/sbin/adduser sogo > /dev/null 2>&1; fi /sbin/chkconfig --add sogod %preun -if [ "$1" == "0" ] -then - /sbin/chkconfig --del sogod - /sbin/service sogod stop > /dev/null 2>&1 -fi +/sbin/chkconfig --del sogod +/sbin/service sogod stop > /dev/null 2>&1 %postun if test "$1" = "0" From 290c4c251713d979cd3855d60096a39c4306f218 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 15:14:20 +0000 Subject: [PATCH 16/36] Monotone-Parent: 066415866c34e37d51f2dd40a9e5f8469c495393 Monotone-Revision: cb528ed9e72c06055c7fde882bedd15f7ef64451 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T15:14:20 Monotone-Branch: ca.inverse.sogo --- sogo.spec | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/sogo.spec b/sogo.spec index 044f9af60..ef5b7b99b 100644 --- a/sogo.spec +++ b/sogo.spec @@ -97,9 +97,7 @@ rm -fr ${RPM_BUILD_ROOT} # ****************************** build ******************************** %build . /usr/GNUstep/System/Library/Makefiles/GNUstep.sh -./configure \ - --enable-strip \ - --disable-debug +./configure case %{_target_platform} in ppc64-*) @@ -222,8 +220,11 @@ if ! id sogo >& /dev/null; then /usr/sbin/adduser sogo > /dev/null 2>&1; fi /sbin/chkconfig --add sogod %preun -/sbin/chkconfig --del sogod -/sbin/service sogod stop > /dev/null 2>&1 +if [ "$1" == "0" ] +then + /sbin/chkconfig --del sogod + /sbin/service sogod stop > /dev/null 2>&1 +fi %postun if test "$1" = "0" From f5941aa62f117cc088fc229c9859d6870e4148eb Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 15:27:25 +0000 Subject: [PATCH 17/36] Monotone-Parent: f88d99a5bcea75c289e4a86001d1d294d3dadb9e Monotone-Revision: b2d085794edde254007a3097e654f621a7c9a284 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T15:27:25 Monotone-Branch: ca.inverse.sogo --- SOPE/NGCards/versitCardsSaxDriver/ChangeLog | 4 + SOPE/NGCards/versitCardsSaxDriver/GNUmakefile | 3 +- .../versitCardsSaxDriver/VSSaxDriver.m | 6 -- .../versitCardsSaxDriver/VSStringFormatter.h | 38 -------- .../versitCardsSaxDriver/VSStringFormatter.m | 94 ------------------- 5 files changed, 5 insertions(+), 140 deletions(-) delete mode 100644 SOPE/NGCards/versitCardsSaxDriver/VSStringFormatter.h delete mode 100644 SOPE/NGCards/versitCardsSaxDriver/VSStringFormatter.m diff --git a/SOPE/NGCards/versitCardsSaxDriver/ChangeLog b/SOPE/NGCards/versitCardsSaxDriver/ChangeLog index a39b14061..f166451be 100644 --- a/SOPE/NGCards/versitCardsSaxDriver/ChangeLog +++ b/SOPE/NGCards/versitCardsSaxDriver/ChangeLog @@ -1,3 +1,7 @@ +2009-03-24 Wolfgang Sourdeau + + * VSStringFormatter.[hm]: removed useless module. + 2007-08-27 Wolfgang Sourdeau * VSSaxDriver.m ([VSSaxDriver diff --git a/SOPE/NGCards/versitCardsSaxDriver/GNUmakefile b/SOPE/NGCards/versitCardsSaxDriver/GNUmakefile index b28f46d96..edb6e1097 100644 --- a/SOPE/NGCards/versitCardsSaxDriver/GNUmakefile +++ b/SOPE/NGCards/versitCardsSaxDriver/GNUmakefile @@ -14,8 +14,7 @@ versitCardsSaxDriver_PCH_FILE = common.h versitCardsSaxDriver_OBJC_FILES = \ VSSaxDriver.m \ - VSCardSaxDriver.m \ - VSStringFormatter.m \ + VSCardSaxDriver.m versitCardsSaxDriver_RESOURCE_FILES = bundle-info.plist diff --git a/SOPE/NGCards/versitCardsSaxDriver/VSSaxDriver.m b/SOPE/NGCards/versitCardsSaxDriver/VSSaxDriver.m index 22ad7653c..38ff8bffa 100644 --- a/SOPE/NGCards/versitCardsSaxDriver/VSSaxDriver.m +++ b/SOPE/NGCards/versitCardsSaxDriver/VSSaxDriver.m @@ -29,7 +29,6 @@ are not expected in a sax handler... this is all wrong. */ #import "VSSaxDriver.h" -#import "VSStringFormatter.h" #import #import #import @@ -164,8 +163,6 @@ static NSCharacterSet *colonAndSemicolonCharSet = nil; static NSCharacterSet *colonSemicolonAndDquoteCharSet = nil; static NSCharacterSet *whitespaceCharSet = nil; -static VSStringFormatter *stringFormatter = nil; - + (void) initialize { static BOOL didInit = NO; @@ -190,8 +187,6 @@ static VSStringFormatter *stringFormatter = nil; [[NSCharacterSet characterSetWithCharactersInString: @":;\""] retain]; whitespaceCharSet = [[NSCharacterSet whitespaceCharacterSet] retain]; - - stringFormatter = [VSStringFormatter sharedFormatter]; } - (id) init { @@ -382,7 +377,6 @@ static VSStringFormatter *stringFormatter = nil; *attr_ = attrName; *value_ = [attrValue unescapedFromCard]; -// *value_ = [stringFormatter stringByUnescapingRFC2445Text: attrValue]; } - (SaxAttributes *) _mapAttrs: (NSArray *) _attrs diff --git a/SOPE/NGCards/versitCardsSaxDriver/VSStringFormatter.h b/SOPE/NGCards/versitCardsSaxDriver/VSStringFormatter.h deleted file mode 100644 index 13d901203..000000000 --- a/SOPE/NGCards/versitCardsSaxDriver/VSStringFormatter.h +++ /dev/null @@ -1,38 +0,0 @@ -/* - Copyright (C) 2004-2005 OpenGroupware.org - - This file is part of versitCardsSaxDriver, written for the OpenGroupware.org - project (OGo). - - SOPE is free software; you can redistribute it and/or modify it under - the terms of the GNU Lesser General Public License as published by the - Free Software Foundation; either version 2, or (at your option) any - later version. - - SOPE is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public - License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with SOPE; see the file COPYING. If not, write to the - Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA - 02111-1307, USA. - */ - - -#ifndef __VSStringFormatter_H_ -#define __VSStringFormatter_H_ - -#import - -@interface VSStringFormatter : NSObject -{ -} - -+ (id)sharedFormatter; -- (NSString *)stringByUnescapingRFC2445Text:(NSString *)_s; - -@end - -#endif /* __VSStringFormatter_H_ */ diff --git a/SOPE/NGCards/versitCardsSaxDriver/VSStringFormatter.m b/SOPE/NGCards/versitCardsSaxDriver/VSStringFormatter.m deleted file mode 100644 index 5535e5ebb..000000000 --- a/SOPE/NGCards/versitCardsSaxDriver/VSStringFormatter.m +++ /dev/null @@ -1,94 +0,0 @@ -/* - Copyright (C) 2004-2005 OpenGroupware.org - - This file is part of versitCardsSaxDriver, written for the OpenGroupware.org - project (OGo). - - SOPE is free software; you can redistribute it and/or modify it under - the terms of the GNU Lesser General Public License as published by the - Free Software Foundation; either version 2, or (at your option) any - later version. - - SOPE is distributed in the hope that it will be useful, but WITHOUT ANY - WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public - License for more details. - - You should have received a copy of the GNU Lesser General Public - License along with SOPE; see the file COPYING. If not, write to the - Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA - 02111-1307, USA. -*/ - -#include "VSStringFormatter.h" -#include "common.h" - -@implementation VSStringFormatter - -static NSCharacterSet *escSet = nil; - -+ (void)initialize { - static BOOL didInit = NO; - - if(didInit) - return; - - didInit = YES; - escSet = [[NSCharacterSet characterSetWithCharactersInString:@"\\"] retain]; -} - -+ (id)sharedFormatter { - static id sharedInstance = nil; - if(!sharedInstance) { - sharedInstance = [[self alloc] init]; - } - return sharedInstance; -} - -- (NSString *)stringByUnescapingRFC2445Text:(NSString *)_s { - NSMutableString *safeString; - unsigned length; - NSRange prevRange, escRange; - NSRange todoRange; - BOOL needsEscaping; - - length = [_s length]; - prevRange = NSMakeRange(0, length); - escRange = [_s rangeOfCharacterFromSet:escSet options:0 range:prevRange]; - - needsEscaping = escRange.length > 0 ? YES : NO; - if (!needsEscaping) - return _s; /* cheap */ - - safeString = [NSMutableString stringWithCapacity:length]; - - do { - prevRange.length = escRange.location - prevRange.location; - if (prevRange.length > 0) - [safeString appendString:[_s substringWithRange:prevRange]]; - - /* test edge case */ - if(NSMaxRange(escRange) < length) { - unichar c = [_s characterAtIndex:escRange.location + 1]; - if(c == 'n' || c == 'N') { - [safeString appendString:@"\n"]; - escRange.length += 1; /* skip the 'n' */ - } - } - - prevRange.location = NSMaxRange(escRange); - todoRange.location = prevRange.location; - todoRange.length = length - prevRange.location; - escRange = [_s rangeOfCharacterFromSet:escSet - options:0 - range:todoRange]; - } - while(escRange.length > 0); - - if (todoRange.length > 0) - [safeString appendString:[_s substringWithRange:todoRange]]; - - return safeString; -} - -@end /* VSStringFormatter */ From cc21f32490f54365e1cd7d230c0fba03ebd8e9e3 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 24 Mar 2009 15:34:15 +0000 Subject: [PATCH 18/36] See ChangeLog Monotone-Parent: f88d99a5bcea75c289e4a86001d1d294d3dadb9e Monotone-Revision: 3dc6b0849523db031cf866d058ecccbf1ecb98db Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2009-03-24T15:34:15 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 17 +++++++++-- SOPE/NGCards/ChangeLog | 5 ++++ .../Appointments/SOGoCalendarComponent.m | 6 +++- UI/MailPartViewers/UIxMailPartICalActions.m | 29 ++++++++++++------- 4 files changed, 43 insertions(+), 14 deletions(-) diff --git a/ChangeLog b/ChangeLog index bd1c2c991..8efbadee6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,16 @@ +2009-03-24 Francis Lachapelle + + * SoObjects/Appointments/SOGoCalendarComponent.m + ([SOGoCalendarComponent + -sendEMailUsingTemplateNamed:forObject:previousObject:toAttendees:]): + no longer send a deletion notification to an attendee who already + declined the meeting. + + * UI/MailPartViewers/UIxMailPartICalActions.m + ([UIxMailPartICalActions -_eventObjectWithUID:forUser:]): when + looking for an event for a specific user, we now search into all + the user's calendar folders. + 2009-03-24 Wolfgang Sourdeau * SoObjects/SOGo/SOGoUser.m ([SOGoUser @@ -115,8 +128,8 @@ * UI/MainUI/SOGoRootPage.m ([SOGoRootPage -version]): new method that returns the application version. - * iCalDateTime.m ([iCalDateTime -dateTime]): when not defined, the - timezone is now guessed from the date of the current object. + * SOPE/NGCards/iCalDateTime.m ([iCalDateTime -dateTime]): when not + defined, the timezone is now guessed from the date of the current object. 2009-03-18 Ludovic Marcotte diff --git a/SOPE/NGCards/ChangeLog b/SOPE/NGCards/ChangeLog index 09e7074bc..330b308a8 100644 --- a/SOPE/NGCards/ChangeLog +++ b/SOPE/NGCards/ChangeLog @@ -9,6 +9,11 @@ currentStartDate when instantiated from a copy of firDate, to avoid a leak. +2009-03-18 Francis Lachapelle + + * iCalDateTime.m ([iCalDateTime -dateTime]): when not defined, the + timezone is now guessed from the date of the current object. + 2009-02-06 Wolfgang Sourdeau * CardElement.m ([CardElement -setParent:aParent]): no longer diff --git a/SoObjects/Appointments/SOGoCalendarComponent.m b/SoObjects/Appointments/SOGoCalendarComponent.m index 017473402..82cc7899b 100644 --- a/SoObjects/Appointments/SOGoCalendarComponent.m +++ b/SoObjects/Appointments/SOGoCalendarComponent.m @@ -570,7 +570,11 @@ _occurenceHasID (iCalRepeatableEntityObject *occurence, NSString *recID) for (i = 0; i < count; i++) { attendee = [attendees objectAtIndex: i]; - if (![[attendee uid] isEqualToString: owner]) + // Don't send a notification to the event organizer nor a deletion + // notification to an attendee who already declined the invitation. + if (![[attendee uid] isEqualToString: owner] && + !([[attendee partStat] compare: @"DECLINED"] == NSOrderedSame && + [newPageName compare: @"Deletion"] == NSOrderedSame)) { /* construct recipient */ recipient = [attendee mailAddress]; diff --git a/UI/MailPartViewers/UIxMailPartICalActions.m b/UI/MailPartViewers/UIxMailPartICalActions.m index e6e483d6c..70ebc78c9 100644 --- a/UI/MailPartViewers/UIxMailPartICalActions.m +++ b/UI/MailPartViewers/UIxMailPartICalActions.m @@ -21,6 +21,7 @@ */ #import +#import #import #import @@ -41,6 +42,7 @@ #import #import #import +#import #import #import #import @@ -69,27 +71,32 @@ - (SOGoAppointmentObject *) _eventObjectWithUID: (NSString *) uid forUser: (SOGoUser *) user { - SOGoAppointmentFolder *personalFolder; + SOGoAppointmentFolder *folder; SOGoAppointmentObject *eventObject; + NSArray *folders; + NSEnumerator *e; NSString *cname; eventObject = nil; -#warning Should call lookupCalendarFoldersForUIDs to search among all folders - personalFolder = [user personalCalendarFolderInContext: context]; - cname = [personalFolder resourceNameForEventUID: uid]; - if (cname) + folders = [[user calendarsFolderInContext: context] subFolders]; + e = [folders objectEnumerator]; + while ( eventObject == nil && (folder = [e nextObject]) ) { - eventObject = [personalFolder lookupName: cname - inContext: context acquire: NO]; - if (![eventObject isKindOfClass: [SOGoAppointmentObject class]]) - eventObject = nil; + cname = [folder resourceNameForEventUID: uid]; + if (cname) + { + eventObject = [folder lookupName: cname + inContext: context acquire: NO]; + if (![eventObject isKindOfClass: [SOGoAppointmentObject class]]) + eventObject = nil; + } } - + if (!eventObject) { eventObject = [SOGoAppointmentObject objectWithName: uid - inContainer: personalFolder]; + inContainer: folder]; [eventObject setIsNew: YES]; } From 4cb373b3942bae9049b46b081f50a6ac3f11df4c Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 24 Mar 2009 15:50:50 +0000 Subject: [PATCH 19/36] Monotone-Parent: 3dc6b0849523db031cf866d058ecccbf1ecb98db Monotone-Revision: 08b58bc681ca962c1a5026adf892bb10e6f4375a Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2009-03-24T15:50:50 Monotone-Branch: ca.inverse.sogo --- SoObjects/Appointments/SOGoAppointmentObject.m | 1 + UI/MailPartViewers/UIxMailPartICalActions.m | 1 + 2 files changed, 2 insertions(+) diff --git a/SoObjects/Appointments/SOGoAppointmentObject.m b/SoObjects/Appointments/SOGoAppointmentObject.m index 7c6758eca..457e22dc2 100644 --- a/SoObjects/Appointments/SOGoAppointmentObject.m +++ b/SoObjects/Appointments/SOGoAppointmentObject.m @@ -202,6 +202,7 @@ if (!object) { + folder = [container lookupCalendarFolderForUID: uid]; object = [SOGoAppointmentObject objectWithName: nameInContainer inContainer: folder]; [object setIsNew: YES]; diff --git a/UI/MailPartViewers/UIxMailPartICalActions.m b/UI/MailPartViewers/UIxMailPartICalActions.m index 70ebc78c9..a58978018 100644 --- a/UI/MailPartViewers/UIxMailPartICalActions.m +++ b/UI/MailPartViewers/UIxMailPartICalActions.m @@ -95,6 +95,7 @@ if (!eventObject) { + folder = [user personalCalendarFolderInContext: context]; eventObject = [SOGoAppointmentObject objectWithName: uid inContainer: folder]; [eventObject setIsNew: YES]; From e1b16d537a6dfd234a101b18cc24d680a9c47e62 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Tue, 24 Mar 2009 15:55:55 +0000 Subject: [PATCH 20/36] See ChangeLog Monotone-Parent: 3dc6b0849523db031cf866d058ecccbf1ecb98db Monotone-Revision: a25f4f4ec1c0c0f924bd34d29ef261e5fc7a995a Monotone-Author: ludovic@Sophos.ca Monotone-Date: 2009-03-24T15:55:55 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 9 +++++++ UI/MailerUI/UIxMailListView.m | 49 ++++++++++++++++++++++------------- 2 files changed, 40 insertions(+), 18 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8efbadee6..4e612336b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2009-03-24 Ludovic Marcotte + + * UI/MailerUI/UIxMailListView.m + ([UIxMailListView messages)]: + Adjusted the sort so it's a little bit faster + and correctly work in case the server returns us + the FETCH response in an order different that what + we asked for. + 2009-03-24 Francis Lachapelle * SoObjects/Appointments/SOGoCalendarComponent.m diff --git a/UI/MailerUI/UIxMailListView.m b/UI/MailerUI/UIxMailListView.m index 0ee6599fb..e560af6c4 100644 --- a/UI/MailerUI/UIxMailListView.m +++ b/UI/MailerUI/UIxMailListView.m @@ -1,14 +1,15 @@ /* Copyright (C) 2004-2005 SKYRIX Software AG + Copyright (C) 2006-2009 Inverse inc. - This file is part of OpenGroupware.org. + This file is part of SOGo - OGo is free software; you can redistribute it and/or modify it under + SOGo is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. - OGo is distributed in the hope that it will be useful, but WITHOUT ANY + SOGo is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. @@ -459,21 +460,26 @@ - (NSArray *) messages { + NSMutableArray *unsortedMsgs; + NSMutableDictionary *map; + NSDictionary *msgs; NSArray *uids; - NSDictionary *msgs, *msg; - NSEnumerator *msgsList; - NSMutableArray *unsortedMsgs, *sortedMsgs; + + unsigned len, i, count; NSRange r; - unsigned len, index; if (!messages) { - r = [self fetchBlock]; + r = [self fetchBlock]; uids = [self sortedUIDs]; len = [uids count]; + + // only need to restrict if we have a lot if (len > r.length) - /* only need to restrict if we have a lot */ + { uids = [uids subarrayWithRange: r]; + len = [uids count]; + } // Don't assume the IMAP server return the messages in the // same order as the specified list of UIDs (specially true for @@ -481,17 +487,24 @@ msgs = (NSDictionary *) [[self clientObject] fetchUIDs: uids parts: [self fetchKeys]]; unsortedMsgs = [msgs objectForKey: @"fetch"]; - sortedMsgs = [NSMutableArray arrayWithCapacity: [unsortedMsgs count]]; - msgsList = [unsortedMsgs objectEnumerator]; - while ( (msg = [msgsList nextObject]) ) + count = [unsortedMsgs count]; + + messages = [NSMutableArray arrayWithCapacity: count]; + + // We build our uid->message map from our FETCH response + map = [[NSMutableDictionary alloc] initWithCapacity: count]; + + for (i = 0; i < count; i++) + [map setObject: [unsortedMsgs objectAtIndex: i] + forKey: [[unsortedMsgs objectAtIndex: i] objectForKey: @"uid"]]; + + for (i = 0; i < len; i++) { - index = [uids indexOfObject: [msg objectForKey: @"uid"]]; - if (index < [sortedMsgs count]) - [sortedMsgs insertObject: msg atIndex: index]; - else - [sortedMsgs addObject: msg]; + [(NSMutableArray *)messages addObject: [map objectForKey: [uids objectAtIndex: i]]]; } - messages = [[NSArray arrayWithArray: sortedMsgs] retain]; + + RELEASE(map); + RETAIN(messages); } return messages; From 0091947cb439843bebe867376f813ac11a6a0d09 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 24 Mar 2009 16:12:09 +0000 Subject: [PATCH 21/36] Monotone-Parent: 08b58bc681ca962c1a5026adf892bb10e6f4375a Monotone-Revision: 54e51821fc9582ce90552a56cae0129864703700 Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2009-03-24T16:12:09 Monotone-Branch: ca.inverse.sogo --- UI/WebServerResources/generic.js | 1 + 1 file changed, 1 insertion(+) diff --git a/UI/WebServerResources/generic.js b/UI/WebServerResources/generic.js index 7849981f6..b9bf21130 100644 --- a/UI/WebServerResources/generic.js +++ b/UI/WebServerResources/generic.js @@ -1461,6 +1461,7 @@ function configureSortableTableHeaders(table) { var headers = $(table).getElementsByClassName("sortableTableHeader"); for (var i = 0; i < headers.length; i++) { var header = $(headers[i]); + header.stopObserving("click", onHeaderClick); header.observe("click", onHeaderClick); } } From 764c156e8992fdc812f30ec42e17814fe95356fc Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 16:30:34 +0000 Subject: [PATCH 22/36] Monotone-Parent: b2d085794edde254007a3097e654f621a7c9a284 Monotone-Revision: a3fc297161b789eefee18087844b47a8aaf75178 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T16:30:34 Monotone-Branch: ca.inverse.sogo --- SOPE/sope-debugleaks.diff | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 SOPE/sope-debugleaks.diff diff --git a/SOPE/sope-debugleaks.diff b/SOPE/sope-debugleaks.diff new file mode 100644 index 000000000..39cea24f8 --- /dev/null +++ b/SOPE/sope-debugleaks.diff @@ -0,0 +1,29 @@ +Index: sope-appserver/NGObjWeb/WOCoreApplication.m +=================================================================== +--- sope-appserver/NGObjWeb/WOCoreApplication.m (révision 1632) ++++ sope-appserver/NGObjWeb/WOCoreApplication.m (copie de travail) +@@ -157,6 +157,10 @@ + NSUserDefaults *ud; + NGLoggerManager *lm; + ++ GSDebugAllocationActive (YES); ++ GSDebugAllocationList (NO); ++ ++// GSDebugAllocationActiveRecordingObjects + [self registerUserDefaults]; + ud = [NSUserDefaults standardUserDefaults]; + lm = [NGLoggerManager defaultLoggerManager]; +@@ -535,10 +539,12 @@ + + if ([self isTerminating]) + break; +- ++ + [self activateApplication]; + [loop runMode:NSDefaultRunLoopMode beforeDate:limitDate]; + [self deactivateApplication]; ++ ++ NSLog (@"allocated classes:\n%s", GSDebugAllocationList (YES)); + } + + [pool release]; From af733ce7503cb4dd7c3f4fed4bb05a31a3d82e47 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 16:33:08 +0000 Subject: [PATCH 23/36] Monotone-Parent: a3fc297161b789eefee18087844b47a8aaf75178 Monotone-Revision: 011dcdb832dcd44414e6e9546d62de0737fbdcd6 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T16:33:08 Monotone-Branch: ca.inverse.sogo --- SOPE/GDLContentStore/ChangeLog | 7 + SOPE/GDLContentStore/GCSFolderManager.m | 5 +- SOPE/GDLContentStore/GCSFolderType.h | 1 - SOPE/GDLContentStore/GCSFolderType.m | 237 +++++++++++++----------- 4 files changed, 136 insertions(+), 114 deletions(-) diff --git a/SOPE/GDLContentStore/ChangeLog b/SOPE/GDLContentStore/ChangeLog index 2aa397409..7d27f8619 100644 --- a/SOPE/GDLContentStore/ChangeLog +++ b/SOPE/GDLContentStore/ChangeLog @@ -1,3 +1,10 @@ +2009-03-24 Wolfgang Sourdeau + + * GCSFolderType.m ([GCSFolderType +folderTypeWithName:_typeName]): + autorelease the returned GCSFolderType. + ([GCSFolderType -initWithFolderTypeName:_path]): removed useless + method. + 2009-03-20 Wolfgang Sourdeau * GCSChannelManager.m ([GCSChannelManager diff --git a/SOPE/GDLContentStore/GCSFolderManager.m b/SOPE/GDLContentStore/GCSFolderManager.m index ab8f9b52a..fd0e70b77 100644 --- a/SOPE/GDLContentStore/GCSFolderManager.m +++ b/SOPE/GDLContentStore/GCSFolderManager.m @@ -161,12 +161,11 @@ static NSLock *lock; GCSFolderType *typeObject; type = [[types objectAtIndex:i] stringByDeletingPathExtension]; - typeObject = [[GCSFolderType alloc] initWithFolderTypeName:type]; + typeObject = [GCSFolderType folderTypeWithName: type]; [self logWithFormat:@" %@: %s", type, [typeObject isNotNull] ? "OK" : "FAIL"]; - [typeMap setObject:typeObject forKey:type]; - [typeObject release]; + [typeMap setObject: typeObject forKey:type]; } return typeMap; diff --git a/SOPE/GDLContentStore/GCSFolderType.h b/SOPE/GDLContentStore/GCSFolderType.h index a27584d18..369e06087 100644 --- a/SOPE/GDLContentStore/GCSFolderType.h +++ b/SOPE/GDLContentStore/GCSFolderType.h @@ -57,7 +57,6 @@ - (id)initWithPropertyList:(id)_plist; - (id)initWithContentsOfFile:(NSString *)_path; -- (id)initWithFolderTypeName:(NSString *)_typeName; /* operations */ diff --git a/SOPE/GDLContentStore/GCSFolderType.m b/SOPE/GDLContentStore/GCSFolderType.m index 04ed7d197..18780b32b 100644 --- a/SOPE/GDLContentStore/GCSFolderType.m +++ b/SOPE/GDLContentStore/GCSFolderType.m @@ -10,11 +10,11 @@ OGo is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public + FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public - License along with OGo; see the file COPYING. If not, write to the + License along with OGo; see the file COPYING. If not, write to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ @@ -39,148 +39,164 @@ @implementation GCSFolderType -- (id)initWithPropertyList:(id)_plist { - if ((self = [super init])) { - NSDictionary *plist = _plist; - - blobTablePattern = [[plist objectForKey:@"blobTablePattern"] copy]; - quickTablePattern = [[plist objectForKey:@"quickTablePattern"]copy]; - - extractorClassName = - [[plist objectForKey:@"extractorClassName"] copy]; - // TODO: qualifier; - - fields = [[GCSFieldInfo fieldsForPropertyList: - [plist objectForKey:@"fields"]] retain]; - } - return self; -} - -- (id)initWithContentsOfFile:(NSString *)_path { - NSDictionary *plist; - - plist = [NSDictionary dictionaryWithContentsOfFile:_path]; - if (plist == nil) { - NSLog(@"ERROR(%s): could not read dictionary at path %@", - __PRETTY_FUNCTION__, _path); - [self release]; - return nil; - } - return [self initWithPropertyList:plist]; -} - -+ (NGResourceLocator *)resourceLocator { - NGResourceLocator *loc; - - // TODO: fix me, GCS instead of OCS - loc = [NGResourceLocator resourceLocatorForGNUstepPath: - @"OCSTypeModels" - fhsPath:@"share/ocs"]; - return loc; -} - -+ (id)folderTypeWithName:(NSString *)_typeName { ++ (id) folderTypeWithName: (NSString *) _typeName +{ NSString *filename, *path; + GCSFolderType *folderType; // TODO: fix me, GCS instead of OCS filename = [_typeName stringByAppendingPathExtension:@"ocs"]; - path = [[self resourceLocator] lookupFileWithName:filename]; - - if (path != nil) - return [[self alloc] initWithContentsOfFile:path]; + path = [[self resourceLocator] lookupFileWithName: filename]; + + if (path) + { + folderType = [[self alloc] initWithContentsOfFile: path]; + [folderType autorelease]; + } + else + { + folderType = nil; + NSLog(@"ERROR(%s): did not find model for type: '%@'", + __PRETTY_FUNCTION__, _typeName); + } - NSLog(@"ERROR(%s): did not find model for type: '%@'", - __PRETTY_FUNCTION__, _typeName); - return nil; + return folderType; } -- (id)initWithFolderTypeName:(NSString *)_typeName { - // DEPRECATED - [self release]; - return [[GCSFolderType folderTypeWithName:_typeName] retain]; +- (id) initWithPropertyList: (id) _plist +{ + NSDictionary *plist = _plist; + + if ((self = [super init])) + { + blobTablePattern = [[plist objectForKey:@"blobTablePattern"] copy]; + quickTablePattern = [[plist objectForKey:@"quickTablePattern"] copy]; + + extractorClassName = + [[plist objectForKey: @"extractorClassName"] copy]; + // TODO: qualifier; + + fields = [[GCSFieldInfo fieldsForPropertyList: + [plist objectForKey:@"fields"]] retain]; + } + + return self; } -- (void)dealloc { - [extractor release]; +- (id) initWithContentsOfFile: (NSString *) _path +{ + NSDictionary *plist; + + plist = [NSDictionary dictionaryWithContentsOfFile: _path]; + if (plist) + [self initWithPropertyList: plist]; + else + { + NSLog(@"ERROR(%s): could not read dictionary at path %@", + __PRETTY_FUNCTION__, _path); + [self release]; + self = nil; + } + + return self; +} + ++ (NGResourceLocator *) resourceLocator +{ + NGResourceLocator *loc; + + // TODO: fix me, GCS instead of OCS + loc = [NGResourceLocator resourceLocatorForGNUstepPath: + @"OCSTypeModels" + fhsPath:@"share/ocs"]; + return loc; +} + +- (void) dealloc +{ + [extractor release]; [extractorClassName release]; - [blobTablePattern release]; - [quickTablePattern release]; - [fields release]; - [folderQualifier release]; + [blobTablePattern release]; + [quickTablePattern release]; + [fields release]; + [folderQualifier release]; [super dealloc]; } /* operations */ -- (NSString *)blobTableNameForFolder:(GCSFolder *)_folder { +- (NSString *) blobTableNameForFolder: (GCSFolder *) _folder +{ return [blobTablePattern - stringByReplacingVariablesWithBindings:_folder]; -} -- (NSString *)quickTableNameForFolder:(GCSFolder *)_folder { - return [quickTablePattern - stringByReplacingVariablesWithBindings:_folder]; + stringByReplacingVariablesWithBindings:_folder]; } -- (EOQualifier *)qualifierForFolder:(GCSFolder *)_folder { - NSArray *keys; +- (NSString *) quickTableNameForFolder: (GCSFolder *) _folder +{ + return [quickTablePattern + stringByReplacingVariablesWithBindings:_folder]; +} + +- (EOQualifier *) qualifierForFolder: (GCSFolder *) _folder +{ + NSArray *keys; NSDictionary *bindings; - + keys = [[folderQualifier allQualifierKeys] allObjects]; if ([keys count] == 0) return folderQualifier; bindings = [_folder valuesForKeys:keys]; return [folderQualifier qualifierWithBindings:bindings - requiresAllVariables:NO]; + requiresAllVariables:NO]; } /* generating SQL */ -- (NSString *)sqlQuickCreateWithTableName:(NSString *)_tabName { +- (NSString *) sqlQuickCreateWithTableName: (NSString *) _tabName +{ NSMutableString *sql; unsigned i, count; - - sql = [NSMutableString stringWithCapacity:512]; - [sql appendString:@"CREATE TABLE "]; - [sql appendString:_tabName]; - [sql appendString:@" (\n"]; - + + sql = [NSMutableString stringWithFormat: @"CREATE TABLE %@ (", _tabName]; count = [fields count]; - for (i = 0; i < count; i++) { - if (i > 0) [sql appendString:@",\n"]; - - [sql appendString:@" "]; - [sql appendString:[[fields objectAtIndex:i] sqlCreateSection]]; - } - + for (i = 0; i < count; i++) + { + if (i > 0) [sql appendString:@", "]; + [sql appendFormat: @" %@", [[fields objectAtIndex:i] sqlCreateSection]]; + } [sql appendString:@"\n)"]; - + return sql; } /* quick support */ -- (GCSFieldExtractor *)quickExtractor { +- (GCSFieldExtractor *) quickExtractor +{ Class clazz; - - if (extractor != nil) { - return [extractor isNotNull] - ? extractor : (GCSFieldExtractor *)nil; - } + GCSFieldExtractor *quickExtractor; - clazz = extractorClassName - ? NSClassFromString(extractorClassName) - : [GCSFieldExtractor class]; - if (clazz == Nil) { - [self logWithFormat:@"ERROR: did not find field extractor class!"]; - return nil; - } - - if ((extractor = [[clazz alloc] init]) == nil) { - [self logWithFormat:@"ERROR: could not create field extractor of class %@", - clazz]; - return nil; - } + if (!extractor) + { + clazz = (extractorClassName + ? NSClassFromString (extractorClassName) + : [GCSFieldExtractor class]); + if (clazz) + { + extractor = [clazz new]; + if (!extractor) + [self logWithFormat:@"ERROR: could not create field extractor of class %@", + clazz]; + } + else + [self logWithFormat:@"ERROR: did not find field extractor class!"]; + } + if ([extractor isNotNull]) + quickExtractor = extractor; + else + quickExtractor = nil; + return extractor; } @@ -191,20 +207,21 @@ /* description */ -- (NSString *)description { +- (NSString *) description +{ NSMutableString *ms; ms = [NSMutableString stringWithCapacity:256]; [ms appendFormat:@"<0x%p[%@]:", self, NSStringFromClass([self class])]; - [ms appendFormat:@" blobtable='%@'", blobTablePattern]; + [ms appendFormat:@" blobtable='%@'", blobTablePattern]; [ms appendFormat:@" quicktable='%@'", quickTablePattern]; - [ms appendFormat:@" fields=%@", fields]; - [ms appendFormat:@" extractor=%@", extractorClassName]; - + [ms appendFormat:@" fields=%@", fields]; + [ms appendFormat:@" extractor=%@", extractorClassName]; + if (folderQualifier) [ms appendFormat:@" qualifier=%@", folderQualifier]; - + [ms appendString:@">"]; return ms; } From 90190dcef67fc1ad6a28f7986e5cd3471ecb3b4d Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 16:34:03 +0000 Subject: [PATCH 24/36] Monotone-Parent: 011dcdb832dcd44414e6e9546d62de0737fbdcd6 Monotone-Revision: 077cf05982d8b328c0c4db80c174a594d7195243 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T16:34:03 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 4 ++++ UI/Scheduler/UIxComponentEditor.m | 15 +++++++-------- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index bd1c2c991..842e1cd04 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2009-03-24 Wolfgang Sourdeau + * UI/Scheduler/UIxComponentEditor.m ([UIxComponentEditor + -_loadAttendees]): make use of autoreleased strings to avoid a leak. + ([UIxComponentEditor -dealloc]): release componentCalendar. + * SoObjects/SOGo/SOGoUser.m ([SOGoUser -_prepareDefaultMailAccounts]): return an autoreleased array to avoid a leak. diff --git a/UI/Scheduler/UIxComponentEditor.m b/UI/Scheduler/UIxComponentEditor.m index a8375cfe0..ea2cb6077 100644 --- a/UI/Scheduler/UIxComponentEditor.m +++ b/UI/Scheduler/UIxComponentEditor.m @@ -104,6 +104,7 @@ iRANGE(2); dateFormat = [datePicker dateFormat]; component = nil; + componentCalendar = nil; [self setPrivacy: @"PUBLIC"]; [self setIsCycleEndNever]; componentOwner = @""; @@ -168,6 +169,7 @@ iRANGE(2); [range2 release]; [component release]; + [componentCalendar release]; [super dealloc]; } @@ -180,10 +182,10 @@ iRANGE(2); NSString *uid; LDAPUserManager *um; - names = [NSMutableString new]; - uids = [NSMutableString new]; - emails = [NSMutableString new]; - states = [NSMutableString new]; + names = [NSMutableString string]; + uids = [NSMutableString string]; + emails = [NSMutableString string]; + states = [NSMutableString string]; um = [LDAPUserManager sharedUserManager]; attendees = [[component attendees] objectEnumerator]; @@ -212,9 +214,6 @@ iRANGE(2); [emails substringToIndex: [emails length] - 1]); ASSIGN (attendeesStates, [states substringToIndex: [states length] - 1]); } - - [names release]; - [emails release]; } - (void) _loadCategories @@ -397,7 +396,7 @@ iRANGE(2); [self _loadAttendees]; [self _loadRRules]; - [componentCalendar release]; + [componentCalendar release]; componentCalendar = [co container]; if ([componentCalendar isKindOfClass: [SOGoCalendarComponent class]]) componentCalendar = [componentCalendar container]; From 97a019a169fdeacb7828ce48aac9e706e5bdcdd5 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 17:33:15 +0000 Subject: [PATCH 25/36] Monotone-Parent: e862c091a9e60e7f16da927f0c0c174a7c80dd6f Monotone-Revision: c47b4189de100dcbf3a1ecb250e443f0ca4b3f91 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T17:33:15 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 5 +++++ SoObjects/SOGo/SOGoObject.m | 2 +- UI/Scheduler/UIxCalMainView.m | 17 ++++++----------- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/ChangeLog b/ChangeLog index cc7dac5c9..d290c9a5e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2009-03-24 Wolfgang Sourdeau + + * UI/Scheduler/UIxCalMainView.m: if the module settings key + exists, do not reset it. + 2009-03-24 Ludovic Marcotte * UI/MailerUI/UIxMailListView.m diff --git a/SoObjects/SOGo/SOGoObject.m b/SoObjects/SOGo/SOGoObject.m index 2858b14d3..44b613c87 100644 --- a/SoObjects/SOGo/SOGoObject.m +++ b/SoObjects/SOGo/SOGoObject.m @@ -561,8 +561,8 @@ SEL SOGoSelectorForPropertySetter (NSString *property) [self _davPrivilegesFromRoles: roles]); [currentAce addObject: currentGrant]; [aces addObject: davElementWithContent (@"ace", @"DAV:", currentAce)]; - [currentAce release]; } + [currentAce release]; } - (void) _fillAcesWithRolesForPseudoPrincipals: (NSMutableArray *) aces diff --git a/UI/Scheduler/UIxCalMainView.m b/UI/Scheduler/UIxCalMainView.m index 86cd931ce..f1c56ee87 100644 --- a/UI/Scheduler/UIxCalMainView.m +++ b/UI/Scheduler/UIxCalMainView.m @@ -40,9 +40,6 @@ #import -static NSMutableArray *monthMenuItems = nil; -static NSMutableArray *yearMenuItems = nil; - @implementation UIxCalMainView - (void) _setupContext @@ -60,24 +57,22 @@ static NSMutableArray *yearMenuItems = nil; moduleSettings = [ud objectForKey: module]; if (!moduleSettings) { - moduleSettings = [NSMutableDictionary new]; - [moduleSettings autorelease]; + moduleSettings = [NSMutableDictionary dictionary]; + [ud setObject: moduleSettings forKey: module]; } - [ud setObject: moduleSettings forKey: module]; } - (NSArray *) monthMenuItems { + static NSMutableArray *monthMenuItems = nil; unsigned int count; if (!monthMenuItems) { - monthMenuItems = [NSMutableArray arrayWithCapacity: 12]; - + monthMenuItems = [[NSMutableArray alloc] initWithCapacity: 12]; for (count = 1; count < 13; count++) [monthMenuItems addObject: [NSString stringWithFormat: @"%.2d", count]]; - [monthMenuItems retain]; } return monthMenuItems; @@ -100,15 +95,15 @@ static NSMutableArray *yearMenuItems = nil; - (NSArray *) yearMenuItems { + static NSMutableArray *yearMenuItems = nil; int count, year; if (!yearMenuItems) { year = [[NSCalendarDate date] yearOfCommonEra]; - yearMenuItems = [NSMutableArray arrayWithCapacity: 11]; + yearMenuItems = [[NSMutableArray alloc] initWithCapacity: 11]; for (count = -5; count < 6; count++) [yearMenuItems addObject: [NSNumber numberWithInt: year + count]]; - [yearMenuItems retain]; } return yearMenuItems; From 91fb95c461dd61c78e12a5ab231f08d91be02572 Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 24 Mar 2009 19:50:33 +0000 Subject: [PATCH 26/36] See ChangeLog Monotone-Parent: e862c091a9e60e7f16da927f0c0c174a7c80dd6f Monotone-Revision: 2383d3cfedbdc621439fd847ceb4bddeed43c93e Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2009-03-24T19:50:33 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 6 ++++++ SoObjects/SOGo/SOGoUser.m | 5 +++++ UI/MainUI/SOGoRootPage.m | 1 + 3 files changed, 12 insertions(+) diff --git a/ChangeLog b/ChangeLog index cc7dac5c9..1a65ad0c4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -9,6 +9,12 @@ 2009-03-24 Francis Lachapelle + * SoObjects/SOGo/SOGoUser.m ([SOGoUser -invalidateLanguage]): + new method to invalidate the language ivar. + + * UI/MainUI/SOGoRootPage.m ([SOGoRootPage -connectAction]): must + invalidate user's language ivar when it changes. + * SoObjects/Appointments/SOGoCalendarComponent.m ([SOGoCalendarComponent -sendEMailUsingTemplateNamed:forObject:previousObject:toAttendees:]): diff --git a/SoObjects/SOGo/SOGoUser.m b/SoObjects/SOGo/SOGoUser.m index f725e525a..3d242f247 100644 --- a/SoObjects/SOGo/SOGoUser.m +++ b/SoObjects/SOGo/SOGoUser.m @@ -548,6 +548,11 @@ _timeValue (NSString *key) return (NSUserDefaults *) settings; } +- (void) invalidateLanguage +{ + language = nil; +} + - (NSString *) language { if (![language length]) diff --git a/UI/MainUI/SOGoRootPage.m b/UI/MainUI/SOGoRootPage.m index 6ba80cf68..914abbf74 100644 --- a/UI/MainUI/SOGoRootPage.m +++ b/UI/MainUI/SOGoRootPage.m @@ -96,6 +96,7 @@ static NSArray *supportedLanguages = nil; user = [SOGoUser userWithLogin: userName roles: nil]; [[user userDefaults] setObject: language forKey: @"Language"]; [[user userDefaults] synchronize]; + [user invalidateLanguage]; } } else From 912181b3e5796eed8f94c39c075e0c84a3507b89 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 20:10:46 +0000 Subject: [PATCH 27/36] Monotone-Parent: c47b4189de100dcbf3a1ecb250e443f0ca4b3f91 Monotone-Revision: cae6414bdec9c9720651a6d880165e55830fd06d Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T20:10:46 Monotone-Branch: ca.inverse.sogo --- UI/Scheduler/UIxRecurrenceEditor.m | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) diff --git a/UI/Scheduler/UIxRecurrenceEditor.m b/UI/Scheduler/UIxRecurrenceEditor.m index 6fc576fe5..cdc4ba4e1 100644 --- a/UI/Scheduler/UIxRecurrenceEditor.m +++ b/UI/Scheduler/UIxRecurrenceEditor.m @@ -29,13 +29,6 @@ @implementation UIxRecurrenceEditor -- (id) defaultAction -{ - [[self parent] setToolbar: @""]; - - return self; -} - - (NSArray *) monthlyRepeatList { static NSArray *monthlyRepeatList = nil; @@ -43,7 +36,7 @@ if (!monthlyRepeatList) { monthlyRepeatList = [NSArray arrayWithObjects: @"First", @"Second", @"Third", - @"Fourth", @"Fift", @"Last", nil]; + @"Fourth", @"Fift", @"Last", nil]; [monthlyRepeatList retain]; } From b7217b2b1f4bb1a10ab4cdb4f40baf4b90060679 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 20:11:18 +0000 Subject: [PATCH 28/36] Monotone-Parent: 343adae0f9aaa38141d7e8ecb879168e50fff1bf Monotone-Revision: 839606f21589ee616eceb8ec004d3a2d9daedb7e Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T20:11:18 Monotone-Branch: ca.inverse.sogo --- UI/Scheduler/UIxComponentEditor.m | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/UI/Scheduler/UIxComponentEditor.m b/UI/Scheduler/UIxComponentEditor.m index ea2cb6077..f8d22a9e3 100644 --- a/UI/Scheduler/UIxComponentEditor.m +++ b/UI/Scheduler/UIxComponentEditor.m @@ -94,15 +94,16 @@ iRANGE(2); - (id) init { + UIxDatePicker *datePicker; + if ((self = [super init])) { - UIxDatePicker *datePicker; - // We must instanciate a UIxDatePicker object to retrieve // the proper date format to use. datePicker = [[UIxDatePicker alloc] initWithContext: context]; dateFormat = [datePicker dateFormat]; - + [datePicker release]; + component = nil; componentCalendar = nil; [self setPrivacy: @"PUBLIC"]; @@ -127,8 +128,6 @@ iRANGE(2); repeat7 = nil; range1 = nil; range2 = nil; - - [datePicker release]; } return self; @@ -167,7 +166,7 @@ iRANGE(2); [repeat7 release]; [range1 release]; [range2 release]; - + [component release]; [componentCalendar release]; @@ -195,7 +194,7 @@ iRANGE(2); [names appendFormat: @"%@,", [currentAttendee cn]]; else [names appendFormat: @"%@,", [currentAttendee rfc822Email]]; - + [emails appendFormat: @"%@,", [currentAttendee rfc822Email]]; uid = [um getUIDForEmail: [currentAttendee rfc822Email]]; if (uid != nil) @@ -363,7 +362,12 @@ iRANGE(2); [self setRange1: @"0"]; } else - DESTROY(repeat); + { + DESTROY(repeat); + repeatType = @"0"; + repeat1 = @"0"; + repeat2 = @"1"; + } } /* warning: we use this method which will be triggered by the template system From 9b8ecdda16679f33bc93f8f45bdc3d29a82c0d82 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 20:16:32 +0000 Subject: [PATCH 29/36] Monotone-Parent: 839606f21589ee616eceb8ec004d3a2d9daedb7e Monotone-Revision: 777b207d77d598bd67693cff03a72a05da47bdd0 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T20:16:32 Monotone-Branch: ca.inverse.sogo --- UI/WebServerResources/UIxRecurrenceEditor.js | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/UI/WebServerResources/UIxRecurrenceEditor.js b/UI/WebServerResources/UIxRecurrenceEditor.js index a30ef240a..f30427aff 100644 --- a/UI/WebServerResources/UIxRecurrenceEditor.js +++ b/UI/WebServerResources/UIxRecurrenceEditor.js @@ -86,10 +86,20 @@ function initializeFormValues() { $("repeatType").value = repeatType; // Default values + var startTimeDate = parent$("startTime_date").value.asDate(); + $('yearlyDayField').value = startTimeDate.getDate(); + $('yearlyMonth1').value = startTimeDate.getMonth(); + $("weekDay"+startTimeDate.getDay()).addClassName("_selected"); + $("monthDay"+startTimeDate.getDate()).addClassName("_selected"); + $('recurrence_form').setRadioValue('dailyRadioButtonName', 0); - $('recurrence_form').setRadioValue('monthlyRadioButtonName', 0); + $('recurrence_form').setRadioValue('monthlyRadioButtonName', 1); $('recurrence_form').setRadioValue('yearlyRadioButtonName', 0); $('endDate_date').disabled = true; + $('dailyDaysField').value = "1"; + $('weeklyWeeksField').value = "1"; + $('monthlyMonthsField').value = "1"; + $('yearlyYearsField').value = "1"; if (repeatType == 0) { // Repeat daily @@ -101,6 +111,9 @@ function initializeFormValues() { $('weeklyWeeksField').value = parent$("repeat1").value; // log ("div: " + weekDiv); // log ("days: " + parent$("repeat2").value); + for (var i = 0; i < 7; i++) { + $("weekDay" + i).removeClassName("_selected"); + } var days = "" + parent$("repeat2").value; if (days.length > 0) { var daysArray = days.split(","); @@ -116,6 +129,10 @@ function initializeFormValues() { $('monthlyRepeat').value = parent$("repeat3").value; $('monthlyDay').value = parent$("repeat4").value; var days = "" + parent$("repeat5").value; + for (var i = 0; i < 31; i++) { + $("monthDay" + (i + 1)).removeClassName("_selected"); + } + if (days.length > 0) { var daysArray = days.split(","); daysArray.each(function(index) { From 1508a894002b8f56bc51f302d8651d86c28ac1bf Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 24 Mar 2009 20:36:49 +0000 Subject: [PATCH 30/36] See ChangeLog Monotone-Parent: 2383d3cfedbdc621439fd847ceb4bddeed43c93e Monotone-Revision: 5d72cbe984ee92d95ab972816ac529dab70a9143 Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2009-03-24T20:36:49 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 4 ++++ SoObjects/SOGo/SOGoCache.m | 8 ++++++++ SoObjects/SOGo/SOGoUser.h | 1 + 3 files changed, 13 insertions(+) diff --git a/ChangeLog b/ChangeLog index 1a65ad0c4..286d2b6e8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -15,6 +15,10 @@ * UI/MainUI/SOGoRootPage.m ([SOGoRootPage -connectAction]): must invalidate user's language ivar when it changes. + * SoObjects/SOGo/SOGoCache.m ([SOGoCache + -_userDefaultsHaveChanged:]): must invalidate the user's language + ivar when the defaults change. + * SoObjects/Appointments/SOGoCalendarComponent.m ([SOGoCalendarComponent -sendEMailUsingTemplateNamed:forObject:previousObject:toAttendees:]): diff --git a/SoObjects/SOGo/SOGoCache.m b/SoObjects/SOGo/SOGoCache.m index af3a7f305..932468722 100644 --- a/SoObjects/SOGo/SOGoCache.m +++ b/SoObjects/SOGo/SOGoCache.m @@ -416,10 +416,18 @@ static NSLock *lock; // - (void) _userDefaultsHaveChanged: (NSNotification *) theNotification { + SOGoUser *user; SOGoUserDefaults *defaults; NSString *uid; uid = [[theNotification userInfo] objectForKey: @"uid"]; + + // When the user defaults changed, we must invalidate the + // ivar language for the user object. + user = [self userNamed: uid]; + if (user) + [user invalidateLanguage]; + //NSLog(@"Updating user defaults for UID: %@", uid); defaults = (SOGoUserDefaults *)[self userDefaultsForLogin: uid]; if (defaults) diff --git a/SoObjects/SOGo/SOGoUser.h b/SoObjects/SOGo/SOGoUser.h index 5ee7088e4..217a5017b 100644 --- a/SoObjects/SOGo/SOGoUser.h +++ b/SoObjects/SOGo/SOGoUser.h @@ -93,6 +93,7 @@ extern NSString *SOGoWeekStartFirstFullWeek; - (NSUserDefaults *) userDefaults; - (NSUserDefaults *) userSettings; +- (void) invalidateLanguage; - (NSString *) language; - (NSTimeZone *) timeZone; - (NSTimeZone *) serverTimeZone; From b6706ba54c9543d52e6248378872a45ad42d1de9 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 20:37:30 +0000 Subject: [PATCH 31/36] Monotone-Parent: 777b207d77d598bd67693cff03a72a05da47bdd0 Monotone-Revision: 252f24f39a4b52374651e35bc9542a9ce32f6183 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T20:37:30 Monotone-Branch: ca.inverse.sogo --- UI/WebServerResources/UIxRecurrenceEditor.js | 72 ++++++++++++++------ 1 file changed, 50 insertions(+), 22 deletions(-) diff --git a/UI/WebServerResources/UIxRecurrenceEditor.js b/UI/WebServerResources/UIxRecurrenceEditor.js index f30427aff..71832056a 100644 --- a/UI/WebServerResources/UIxRecurrenceEditor.js +++ b/UI/WebServerResources/UIxRecurrenceEditor.js @@ -270,37 +270,65 @@ function handleMonthlyRecurrence() { return validate; } +function validateYearlyRecurrence() { + var errors = ["Please specify a numerical value in the Year(s)" + + " field greater or equal to 1.", + "Please specify a numerical value in the month day" + + " field greater or equal to 1."]; + + var errorToShow = 0; + var fieldValue = "" + $('yearlyYearsField').value; + if (fieldValue.length > 0) { + // We check if the yearlyYearsField really contains an integer + var v = parseInt(fieldValue); + if (!isNaN(v) && v > 0) { + errorToShow = 1; + fieldValue = "" + $('yearlyDayField').value; + if (fieldValue.length > 0) { + // We check if the yearlyYearsField really contains an integer + var v = parseInt(fieldValue); + if (!isNaN(v) && v > 0) { + errorToShow = -1; + } + } + } + } + + if (errorToShow > -1) + window.alert(errors[errorToShow]); + + return (errorToShow == -1); +} + function handleYearlyRecurrence() { var validate = false; var radioValue = $('recurrence_form').getRadioValue('yearlyRadioButtonName'); - // FIXME - right now we do not support rules // such as Every Second Tuesday of February if (radioValue == 1) window.alert("This type of recurrence is currently unsupported."); else { - var showError = true; - - var fieldValue = "" + $('yearlyYearsField').value; - if (fieldValue.length > 0) { - // We check if the yearlyYearsField really contains an integer - var v = parseInt(fieldValue); - if (!isNaN(v) && v > 0) { - validate = true; - showError = false; - parent$("repeat1").value = fieldValue; - parent$("repeat2").value = radioValue; - parent$("repeat3").value = $('yearlyDayField').value; - parent$("repeat4").value = $('yearlyMonth1').value; - parent$("repeat5").value = $('yearlyRepeat').value; - parent$("repeat6").value = $('yearlyDay').value; - parent$("repeat7").value = $('yearlyMonth2').value; - } - } - - if (showError) - window.alert("Please specify a numerical value in the Year(s) field greater or equal to 1."); + if (validateYearlyRecurrence()) { + var fieldValue = "" + $('yearlyYearsField').value; + if (fieldValue.length > 0) { + // We check if the yearlyYearsField really contains an integer + var v = parseInt(fieldValue); + if (!isNaN(v) && v > 0) { + validate = true; + showError = false; + parent$("repeat1").value = fieldValue; + parent$("repeat2").value = radioValue; + parent$("repeat3").value = $('yearlyDayField').value; + parent$("repeat4").value = $('yearlyMonth1').value; + parent$("repeat5").value = $('yearlyRepeat').value; + parent$("repeat6").value = $('yearlyDay').value; + parent$("repeat7").value = $('yearlyMonth2').value; + } + } + } + else + validate = false; } return validate; From cf3904b74eabb7d03d311fb008e222c5d71b3406 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 20:41:55 +0000 Subject: [PATCH 32/36] Monotone-Parent: 252f24f39a4b52374651e35bc9542a9ce32f6183 Monotone-Revision: c2585f82f4d8e290b032bc65809c929cabaa8389 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T20:41:55 Monotone-Branch: ca.inverse.sogo --- UI/MainUI/Version | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UI/MainUI/Version b/UI/MainUI/Version index 051efa3c5..5768c75df 100644 --- a/UI/MainUI/Version +++ b/UI/MainUI/Version @@ -1,5 +1,5 @@ # Version file -SUBMINOR_VERSION:=0 +SUBMINOR_VERSION:=1 # v0.9.1 requires Main v0.9.59 From 5443b78f67a42f1ebee41a5b6e96b64861e216fa Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 24 Mar 2009 20:50:18 +0000 Subject: [PATCH 33/36] See ChangeLog Monotone-Parent: f2fe2bb08a995eb4ae8043ab64aef1f18a8b3823 Monotone-Revision: c5a0687be6e6c2cb000143fcd5eeaaf90730097d Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2009-03-24T20:50:18 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 13 ++++++ UI/MailPartViewers/UIxMailPartICalViewer.m | 41 ++++++++++++++++--- .../MailPartViewers/UIxMailPartICalViewer.wox | 20 +++++++-- 3 files changed, 66 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 582a816ef..7b414324e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -35,6 +35,19 @@ looking for an event for a specific user, we now search into all the user's calendar folders. + * UI/MailPartViewers/UIxMailPartICalViewer.m + ([UIxMailPartICalViewer -startCalendarDate]): new method that returns + the start date with the proper timezone. + ([-endCalendarDate]): idem for the end date. + ([-startDate]): new method that returns a formatted string of the + start date. + ([-endDate]): idem for the end date. Also take care of all-day events. + ([-startTime]): new method that returns a formatted string ot the + start time. + ([-endTime]): idem for the end time. + ([-isEndDateOnSameDay]): must subtract 1 second from end date when + it's a all-day event. + 2009-03-24 Wolfgang Sourdeau * UI/Scheduler/UIxComponentEditor.m ([UIxComponentEditor diff --git a/UI/MailPartViewers/UIxMailPartICalViewer.m b/UI/MailPartViewers/UIxMailPartICalViewer.m index 4a18f0284..69916a243 100644 --- a/UI/MailPartViewers/UIxMailPartICalViewer.m +++ b/UI/MailPartViewers/UIxMailPartICalViewer.m @@ -164,7 +164,7 @@ return item; } -- (NSCalendarDate *) startTime +- (NSCalendarDate *) startCalendarDate { NSCalendarDate *date; NSTimeZone *timeZone; @@ -172,11 +172,21 @@ date = [[self inEvent] startDate]; timeZone = [[context activeUser] timeZone]; [date setTimeZone: timeZone]; - + return date; } -- (NSCalendarDate *) endTime +- (NSString *) startDate +{ + return [[self dateFormatter] formattedDate: [self startCalendarDate]]; +} + +- (NSString *) startTime +{ + return [[self dateFormatter] formattedTime: [self startCalendarDate]]; +} + +- (NSCalendarDate *) endCalendarDate { NSCalendarDate *date; NSTimeZone *timeZone; @@ -188,14 +198,35 @@ return date; } +- (NSString *) endDate +{ + NSCalendarDate *aDate; + if ([[self inEvent] isAllDay]) + aDate = [[self endCalendarDate] dateByAddingYears:0 months:0 days:0 hours:0 minutes:0 seconds:-1]; + else + aDate = [self endCalendarDate]; + + return [[self dateFormatter] formattedDate: aDate]; +} + +- (NSString *) endTime +{ + return [[self dateFormatter] formattedTime: [self endCalendarDate]]; +} + - (BOOL) isEndDateOnSameDay { - return [[self startTime] isDateOnSameDay:[self endTime]]; + NSCalendarDate *aDate; + if ([[self inEvent] isAllDay]) + aDate = [[self endCalendarDate] dateByAddingYears:0 months:0 days:0 hours:0 minutes:0 seconds:-1]; + else + aDate = [self endCalendarDate]; + return [[self startCalendarDate] isDateOnSameDay: aDate]; } - (NSTimeInterval) duration { - return [[self endTime] timeIntervalSinceDate:[self startTime]]; + return [[self endCalendarDate] timeIntervalSinceDate:[self startCalendarDate]]; } /* calendar folder support */ diff --git a/UI/Templates/MailPartViewers/UIxMailPartICalViewer.wox b/UI/Templates/MailPartViewers/UIxMailPartICalViewer.wox index 96bf1e168..cf76b98c8 100644 --- a/UI/Templates/MailPartViewers/UIxMailPartICalViewer.wox +++ b/UI/Templates/MailPartViewers/UIxMailPartICalViewer.wox @@ -167,9 +167,23 @@ : - - - + + + + + + + + + + + + + + + + + From fbd13ebf7b6cde11f937949f79d27e8a516e3726 Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Tue, 24 Mar 2009 20:50:31 +0000 Subject: [PATCH 34/36] Monotone-Parent: f2fe2bb08a995eb4ae8043ab64aef1f18a8b3823 Monotone-Revision: d9282e066f50fa8c916a17d4f28da3eb6ffc1411 Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2009-03-24T20:50:31 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 4 ++ UI/Scheduler/UIxComponentEditor.m | 106 +++++++++++++++++------------- 2 files changed, 66 insertions(+), 44 deletions(-) diff --git a/ChangeLog b/ChangeLog index 582a816ef..0138872aa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2009-03-24 Wolfgang Sourdeau + * UI/Scheduler/UIxComponentEditor.m ([UIxComponentEditor + -takeValuesFromRequest:_rqinContext:_ctx]): ensure the values + meant to construct the custom recurrence rule are consistent. + * UI/Scheduler/UIxCalMainView.m: if the module settings key exists, do not reset it. diff --git a/UI/Scheduler/UIxComponentEditor.m b/UI/Scheduler/UIxComponentEditor.m index f8d22a9e3..8ffe9460a 100644 --- a/UI/Scheduler/UIxComponentEditor.m +++ b/UI/Scheduler/UIxComponentEditor.m @@ -1438,19 +1438,22 @@ RANGE(2); // case 0: { - [theRule setFrequency: iCalRecurrenceFrequenceDaily]; + if ([[self repeat2] intValue] > 0) + { + [theRule setFrequency: iCalRecurrenceFrequenceDaily]; - if ([[self repeat1] intValue] == 0) - { - [theRule setInterval: [self repeat2]]; - } - else - { - [theRule setByDayMask: (iCalWeekDayMonday - |iCalWeekDayTuesday - |iCalWeekDayWednesday - |iCalWeekDayThursday - |iCalWeekDayFriday)]; + if ([[self repeat1] intValue] == 0) + { + [theRule setInterval: [self repeat2]]; + } + else + { + [theRule setByDayMask: (iCalWeekDayMonday + |iCalWeekDayTuesday + |iCalWeekDayWednesday + |iCalWeekDayThursday + |iCalWeekDayFriday)]; + } } } break; @@ -1465,20 +1468,23 @@ RANGE(2); // The list is separated by commas, like: 1,3,4 case 1: { - NSArray *v; - int c, mask; + if ([[self repeat1] intValue] > 0) + { + NSArray *v; + int c, mask; - [theRule setFrequency: iCalRecurrenceFrequenceWeekly]; - [theRule setInterval: [self repeat1]]; + [theRule setFrequency: iCalRecurrenceFrequenceWeekly]; + [theRule setInterval: [self repeat1]]; - v = [[self repeat2] componentsSeparatedByString: @","]; - c = [v count]; - mask = 0; + v = [[self repeat2] componentsSeparatedByString: @","]; + c = [v count]; + mask = 0; - while (c--) - mask |= 1 << ([[v objectAtIndex: c] intValue]); + while (c--) + mask |= 1 << ([[v objectAtIndex: c] intValue]); - [theRule setByDayMask: mask]; + [theRule setByDayMask: mask]; + } } break; @@ -1504,17 +1510,21 @@ RANGE(2); // case 2: { - [theRule setFrequency: iCalRecurrenceFrequenceMonthly]; - [theRule setInterval: [self repeat1]]; + if ([[self repeat1] intValue] > 0) + { + [theRule setFrequency: iCalRecurrenceFrequenceMonthly]; + [theRule setInterval: [self repeat1]]; - // We recur on specific days... - if ([[self repeat2] intValue] == 1) - { - [theRule setNamedValue: @"bymonthday" to: [self repeat5]]; - } - else - { - // TODO + // We recur on specific days... + if ([[self repeat2] intValue] == 1 + && [[self repeat5] intValue] > 0) + { + [theRule setNamedValue: @"bymonthday" to: [self repeat5]]; + } + else + { + // TODO + } } } break; @@ -1538,19 +1548,27 @@ RANGE(2); case 3: default: { - [theRule setFrequency: iCalRecurrenceFrequenceYearly]; - [theRule setInterval: [self repeat1]]; + if ([[self repeat1] intValue] > 0) + { + [theRule setFrequency: iCalRecurrenceFrequenceYearly]; + [theRule setInterval: [self repeat1]]; - // We recur Every .. of .. - if ([[self repeat2] intValue] == 1) - { - // TODO - } - else - { - [theRule setNamedValue: @"bymonthday" to: [self repeat3]]; - [theRule setNamedValue: @"bymonth" - to: [NSString stringWithFormat: @"%d", ([[self repeat4] intValue]+1)]]; + // We recur Every .. of .. + if ([[self repeat2] intValue] == 1) + { + // TODO + } + else + { + if ([[self repeat3] intValue] > 0 + && [[self repeat4] intValue] > 0) + { + [theRule setNamedValue: @"bymonthday" + to: [self repeat3]]; + [theRule setNamedValue: @"bymonth" + to: [NSString stringWithFormat: @"%d", ([[self repeat4] intValue]+1)]]; + } + } } } break; From 302c468a4027128233202923da666ac26657862a Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Tue, 24 Mar 2009 21:46:14 +0000 Subject: [PATCH 35/36] Improved update notification email for all-day event. Monotone-Parent: 3e59e0c43d322ac5fbc4016256ca84d3ea3a48f4 Monotone-Revision: 5c2f980ac5823528c17146f4e481573c34720bdd Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2009-03-24T21:46:14 Monotone-Branch: ca.inverse.sogo --- .../SOGoAptMailDutchUpdate.html | 2 +- .../SOGoAptMailDutchUpdate.wod | 10 ++++++++++ .../SOGoAptMailEnglishUpdate.html | 2 +- .../SOGoAptMailEnglishUpdate.wod | 10 ++++++++++ .../SOGoAptMailFrenchUpdate.html | 2 +- .../SOGoAptMailFrenchUpdate.wod | 10 ++++++++++ .../SOGoAptMailGermanUpdate.html | 2 +- .../SOGoAptMailGermanUpdate.wod | 10 ++++++++++ .../SOGoAptMailItalianUpdate.html | 2 +- .../SOGoAptMailItalianUpdate.wod | 10 ++++++++++ .../SOGoAptMailSpanishUpdate.html | 2 +- .../SOGoAptMailSpanishUpdate.wod | 10 ++++++++++ 12 files changed, 66 insertions(+), 6 deletions(-) diff --git a/SoObjects/Appointments/SOGoAptMailDutchUpdate.wo/SOGoAptMailDutchUpdate.html b/SoObjects/Appointments/SOGoAptMailDutchUpdate.wo/SOGoAptMailDutchUpdate.html index ade9f7f44..10b806356 100644 --- a/SoObjects/Appointments/SOGoAptMailDutchUpdate.wo/SOGoAptMailDutchUpdate.html +++ b/SoObjects/Appointments/SOGoAptMailDutchUpdate.wo/SOGoAptMailDutchUpdate.html @@ -1,5 +1,5 @@ <#IsSubject>The appointment "<#Summary />" for the <#OldAptStartDate /> at <#OldAptStartTime /> has changed <#IsBody> -This appointment<#HasSentBy> (sent by <#sentBy/>), previously set for <#OldAptStartDate /> at <#OldAptStartTime /><#HasOldLocation> (<#OldAptLocation />) is now scheduled for <#NewAptStartDate /> at <#NewAptStartTime /><#HasNewLocation> (<#NewAptLocation />). +This appointment<#HasSentBy> (sent by <#sentBy/>), previously set for <#OldAptStartDate /><#IsNotOldAllDay> at <#OldAptStartTime /><#HasOldLocation> (<#OldAptLocation />) is now scheduled for <#NewAptStartDate /><#IsNotNewAllDay> at <#NewAptStartTime /><#HasNewLocation> (<#NewAptLocation />). Please make a decision for these new settings. diff --git a/SoObjects/Appointments/SOGoAptMailDutchUpdate.wo/SOGoAptMailDutchUpdate.wod b/SoObjects/Appointments/SOGoAptMailDutchUpdate.wo/SOGoAptMailDutchUpdate.wod index 65021fc5a..df9b65c38 100644 --- a/SoObjects/Appointments/SOGoAptMailDutchUpdate.wo/SOGoAptMailDutchUpdate.wod +++ b/SoObjects/Appointments/SOGoAptMailDutchUpdate.wo/SOGoAptMailDutchUpdate.wod @@ -10,6 +10,11 @@ OldAptStartTime: WOString { escapeHTML = NO; } +IsNotOldAllDay: WOConditional { + condition = previousApt.isAllDay; + negate = YES; +} + NewAptStartDate: WOString { value = newStartDate; dateformat = "%d/%m/%y"; @@ -22,6 +27,11 @@ NewAptStartTime: WOString { escapeHTML = NO; } +IsNotNewAllDay: WOConditional { + condition = apt.isAllDay; + negate = YES; +} + Organizer: WOString { value = organizerName; escapeHTML = NO; diff --git a/SoObjects/Appointments/SOGoAptMailEnglishUpdate.wo/SOGoAptMailEnglishUpdate.html b/SoObjects/Appointments/SOGoAptMailEnglishUpdate.wo/SOGoAptMailEnglishUpdate.html index ade9f7f44..10b806356 100644 --- a/SoObjects/Appointments/SOGoAptMailEnglishUpdate.wo/SOGoAptMailEnglishUpdate.html +++ b/SoObjects/Appointments/SOGoAptMailEnglishUpdate.wo/SOGoAptMailEnglishUpdate.html @@ -1,5 +1,5 @@ <#IsSubject>The appointment "<#Summary />" for the <#OldAptStartDate /> at <#OldAptStartTime /> has changed <#IsBody> -This appointment<#HasSentBy> (sent by <#sentBy/>), previously set for <#OldAptStartDate /> at <#OldAptStartTime /><#HasOldLocation> (<#OldAptLocation />) is now scheduled for <#NewAptStartDate /> at <#NewAptStartTime /><#HasNewLocation> (<#NewAptLocation />). +This appointment<#HasSentBy> (sent by <#sentBy/>), previously set for <#OldAptStartDate /><#IsNotOldAllDay> at <#OldAptStartTime /><#HasOldLocation> (<#OldAptLocation />) is now scheduled for <#NewAptStartDate /><#IsNotNewAllDay> at <#NewAptStartTime /><#HasNewLocation> (<#NewAptLocation />). Please make a decision for these new settings. diff --git a/SoObjects/Appointments/SOGoAptMailEnglishUpdate.wo/SOGoAptMailEnglishUpdate.wod b/SoObjects/Appointments/SOGoAptMailEnglishUpdate.wo/SOGoAptMailEnglishUpdate.wod index 65021fc5a..df9b65c38 100644 --- a/SoObjects/Appointments/SOGoAptMailEnglishUpdate.wo/SOGoAptMailEnglishUpdate.wod +++ b/SoObjects/Appointments/SOGoAptMailEnglishUpdate.wo/SOGoAptMailEnglishUpdate.wod @@ -10,6 +10,11 @@ OldAptStartTime: WOString { escapeHTML = NO; } +IsNotOldAllDay: WOConditional { + condition = previousApt.isAllDay; + negate = YES; +} + NewAptStartDate: WOString { value = newStartDate; dateformat = "%d/%m/%y"; @@ -22,6 +27,11 @@ NewAptStartTime: WOString { escapeHTML = NO; } +IsNotNewAllDay: WOConditional { + condition = apt.isAllDay; + negate = YES; +} + Organizer: WOString { value = organizerName; escapeHTML = NO; diff --git a/SoObjects/Appointments/SOGoAptMailFrenchUpdate.wo/SOGoAptMailFrenchUpdate.html b/SoObjects/Appointments/SOGoAptMailFrenchUpdate.wo/SOGoAptMailFrenchUpdate.html index d746a6fdd..4bd7f62e9 100644 --- a/SoObjects/Appointments/SOGoAptMailFrenchUpdate.wo/SOGoAptMailFrenchUpdate.html +++ b/SoObjects/Appointments/SOGoAptMailFrenchUpdate.wo/SOGoAptMailFrenchUpdate.html @@ -1,5 +1,5 @@ <#IsSubject>Le rendez-vous "<#Summary />" du <#OldAptStartDate /> à <#OldAptStartTime /> est modifié <#IsBody> -La réunion<#HasSentBy> (envoyé par <#sentBy/>) qui devait se dérouler le <#OldAptStartDate /> à <#OldAptStartTime /><#HasOldLocation> (<#OldAptLocation />) est maintenant prévue le <#NewAptStartDate /> à <#NewAptStartTime /><#HasNewLocation> (<#NewAptLocation />). +La réunion<#HasSentBy> (envoyé par <#sentBy/>) qui devait se dérouler le <#OldAptStartDate /><#IsNotOldAllDay> à <#OldAptStartTime /><#HasOldLocation> (<#OldAptLocation />) est maintenant prévue le <#NewAptStartDate /><#IsNotNewAllDay> à <#NewAptStartTime /><#HasNewLocation> (<#NewAptLocation />). Vous êtes invité à accepter ou refuser de participer à la réunion pour cette nouvelle date. diff --git a/SoObjects/Appointments/SOGoAptMailFrenchUpdate.wo/SOGoAptMailFrenchUpdate.wod b/SoObjects/Appointments/SOGoAptMailFrenchUpdate.wo/SOGoAptMailFrenchUpdate.wod index 65021fc5a..df9b65c38 100644 --- a/SoObjects/Appointments/SOGoAptMailFrenchUpdate.wo/SOGoAptMailFrenchUpdate.wod +++ b/SoObjects/Appointments/SOGoAptMailFrenchUpdate.wo/SOGoAptMailFrenchUpdate.wod @@ -10,6 +10,11 @@ OldAptStartTime: WOString { escapeHTML = NO; } +IsNotOldAllDay: WOConditional { + condition = previousApt.isAllDay; + negate = YES; +} + NewAptStartDate: WOString { value = newStartDate; dateformat = "%d/%m/%y"; @@ -22,6 +27,11 @@ NewAptStartTime: WOString { escapeHTML = NO; } +IsNotNewAllDay: WOConditional { + condition = apt.isAllDay; + negate = YES; +} + Organizer: WOString { value = organizerName; escapeHTML = NO; diff --git a/SoObjects/Appointments/SOGoAptMailGermanUpdate.wo/SOGoAptMailGermanUpdate.html b/SoObjects/Appointments/SOGoAptMailGermanUpdate.wo/SOGoAptMailGermanUpdate.html index a1fe49195..0de7e95ad 100644 --- a/SoObjects/Appointments/SOGoAptMailGermanUpdate.wo/SOGoAptMailGermanUpdate.html +++ b/SoObjects/Appointments/SOGoAptMailGermanUpdate.wo/SOGoAptMailGermanUpdate.html @@ -1,5 +1,5 @@ <#IsSubject>Der Termin "<#Summary />" am <#OldAptStartDate /> um <#OldAptStartTime /> hat sich geändert <#IsBody> -Dieser Termin <#HasSentBy>(sent by <#sentBy/>), ursprünglich geplant am <#OldAptStartDate /> um <#OldAptStartTime /><#HasOldLocation> (<#OldAptLocation />), ist nun verschoben auf den <#NewAptStartDate /> um <#NewAptStartTime /><#HasNewLocation> (<#NewAptLocation />). +Dieser Termin <#HasSentBy>(sent by <#sentBy/>), ursprünglich geplant am <#OldAptStartDate /><#IsNotOldAllDay> um <#OldAptStartTime /><#HasOldLocation> (<#OldAptLocation />), ist nun verschoben auf den <#NewAptStartDate /><#IsNotNewAllDay> um <#NewAptStartTime /><#HasNewLocation> (<#NewAptLocation />). Bitte treffen Sie eine Entscheidung über diese Änderung. diff --git a/SoObjects/Appointments/SOGoAptMailGermanUpdate.wo/SOGoAptMailGermanUpdate.wod b/SoObjects/Appointments/SOGoAptMailGermanUpdate.wo/SOGoAptMailGermanUpdate.wod index 65021fc5a..df9b65c38 100644 --- a/SoObjects/Appointments/SOGoAptMailGermanUpdate.wo/SOGoAptMailGermanUpdate.wod +++ b/SoObjects/Appointments/SOGoAptMailGermanUpdate.wo/SOGoAptMailGermanUpdate.wod @@ -10,6 +10,11 @@ OldAptStartTime: WOString { escapeHTML = NO; } +IsNotOldAllDay: WOConditional { + condition = previousApt.isAllDay; + negate = YES; +} + NewAptStartDate: WOString { value = newStartDate; dateformat = "%d/%m/%y"; @@ -22,6 +27,11 @@ NewAptStartTime: WOString { escapeHTML = NO; } +IsNotNewAllDay: WOConditional { + condition = apt.isAllDay; + negate = YES; +} + Organizer: WOString { value = organizerName; escapeHTML = NO; diff --git a/SoObjects/Appointments/SOGoAptMailItalianUpdate.wo/SOGoAptMailItalianUpdate.html b/SoObjects/Appointments/SOGoAptMailItalianUpdate.wo/SOGoAptMailItalianUpdate.html index a36e94a2b..5b2637a8a 100644 --- a/SoObjects/Appointments/SOGoAptMailItalianUpdate.wo/SOGoAptMailItalianUpdate.html +++ b/SoObjects/Appointments/SOGoAptMailItalianUpdate.wo/SOGoAptMailItalianUpdate.html @@ -1,5 +1,5 @@ <#IsSubject>L'appuntamento "<#Summary />" fissato in data <#OldAptStartDate /> alle ore <#OldAptStartTime /> è stato modificato <#IsBody> -Questo appuntamento<#HasSentBy> (sent by <#sentBy/>), fissato precedentemete in data <#OldAptStartDate /><#HasOldLocation> (<#OldAptLocation />) alle ore <#OldAptStartTime /> è ora programmato il <#NewAptStartDate /> alle ore <#NewAptStartTime/><#HasNewLocation> (<#NewAptLocation />). +Questo appuntamento<#HasSentBy> (sent by <#sentBy/>), fissato precedentemete in data <#OldAptStartDate /><#HasOldLocation> (<#OldAptLocation />)<#IsNotOldAllDay> alle ore <#OldAptStartTime /> è ora programmato il <#NewAptStartDate /><#IsNotNewAllDay> alle ore <#NewAptStartTime/><#HasNewLocation> (<#NewAptLocation />). Per confermare o disdire. diff --git a/SoObjects/Appointments/SOGoAptMailItalianUpdate.wo/SOGoAptMailItalianUpdate.wod b/SoObjects/Appointments/SOGoAptMailItalianUpdate.wo/SOGoAptMailItalianUpdate.wod index 65021fc5a..df9b65c38 100644 --- a/SoObjects/Appointments/SOGoAptMailItalianUpdate.wo/SOGoAptMailItalianUpdate.wod +++ b/SoObjects/Appointments/SOGoAptMailItalianUpdate.wo/SOGoAptMailItalianUpdate.wod @@ -10,6 +10,11 @@ OldAptStartTime: WOString { escapeHTML = NO; } +IsNotOldAllDay: WOConditional { + condition = previousApt.isAllDay; + negate = YES; +} + NewAptStartDate: WOString { value = newStartDate; dateformat = "%d/%m/%y"; @@ -22,6 +27,11 @@ NewAptStartTime: WOString { escapeHTML = NO; } +IsNotNewAllDay: WOConditional { + condition = apt.isAllDay; + negate = YES; +} + Organizer: WOString { value = organizerName; escapeHTML = NO; diff --git a/SoObjects/Appointments/SOGoAptMailSpanishUpdate.wo/SOGoAptMailSpanishUpdate.html b/SoObjects/Appointments/SOGoAptMailSpanishUpdate.wo/SOGoAptMailSpanishUpdate.html index ade9f7f44..10b806356 100644 --- a/SoObjects/Appointments/SOGoAptMailSpanishUpdate.wo/SOGoAptMailSpanishUpdate.html +++ b/SoObjects/Appointments/SOGoAptMailSpanishUpdate.wo/SOGoAptMailSpanishUpdate.html @@ -1,5 +1,5 @@ <#IsSubject>The appointment "<#Summary />" for the <#OldAptStartDate /> at <#OldAptStartTime /> has changed <#IsBody> -This appointment<#HasSentBy> (sent by <#sentBy/>), previously set for <#OldAptStartDate /> at <#OldAptStartTime /><#HasOldLocation> (<#OldAptLocation />) is now scheduled for <#NewAptStartDate /> at <#NewAptStartTime /><#HasNewLocation> (<#NewAptLocation />). +This appointment<#HasSentBy> (sent by <#sentBy/>), previously set for <#OldAptStartDate /><#IsNotOldAllDay> at <#OldAptStartTime /><#HasOldLocation> (<#OldAptLocation />) is now scheduled for <#NewAptStartDate /><#IsNotNewAllDay> at <#NewAptStartTime /><#HasNewLocation> (<#NewAptLocation />). Please make a decision for these new settings. diff --git a/SoObjects/Appointments/SOGoAptMailSpanishUpdate.wo/SOGoAptMailSpanishUpdate.wod b/SoObjects/Appointments/SOGoAptMailSpanishUpdate.wo/SOGoAptMailSpanishUpdate.wod index 65021fc5a..df9b65c38 100644 --- a/SoObjects/Appointments/SOGoAptMailSpanishUpdate.wo/SOGoAptMailSpanishUpdate.wod +++ b/SoObjects/Appointments/SOGoAptMailSpanishUpdate.wo/SOGoAptMailSpanishUpdate.wod @@ -10,6 +10,11 @@ OldAptStartTime: WOString { escapeHTML = NO; } +IsNotOldAllDay: WOConditional { + condition = previousApt.isAllDay; + negate = YES; +} + NewAptStartDate: WOString { value = newStartDate; dateformat = "%d/%m/%y"; @@ -22,6 +27,11 @@ NewAptStartTime: WOString { escapeHTML = NO; } +IsNotNewAllDay: WOConditional { + condition = apt.isAllDay; + negate = YES; +} + Organizer: WOString { value = organizerName; escapeHTML = NO; From 7b3af7e7f89ddbe38c96aaf7334505e3593d140c Mon Sep 17 00:00:00 2001 From: Francis Lachapelle Date: Wed, 25 Mar 2009 14:38:19 +0000 Subject: [PATCH 36/36] See ChangeLog Monotone-Parent: 5c2f980ac5823528c17146f4e481573c34720bdd Monotone-Revision: 9c818b369358da0b25cfcd319b9f6f2d319fb99d Monotone-Author: flachapelle@inverse.ca Monotone-Date: 2009-03-25T14:38:19 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 6 ++++++ SoObjects/SOGo/SOGoUser.m | 9 ++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 99ff6839a..b6b25b5de 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2009-03-25 Francis Lachapelle + + * SoObjects/SOGo/SOGoUser.m ([SOGoUser -language]): must retain + the ivar language to avoid a crash if the language is retrieved + from the user agent header returned by the browser. + 2009-03-24 Wolfgang Sourdeau * UI/Scheduler/UIxComponentEditor.m ([UIxComponentEditor diff --git a/SoObjects/SOGo/SOGoUser.m b/SoObjects/SOGo/SOGoUser.m index 3d242f247..abcd0499b 100644 --- a/SoObjects/SOGo/SOGoUser.m +++ b/SoObjects/SOGo/SOGoUser.m @@ -280,6 +280,7 @@ _timeValue (NSString *key) [allEmails release]; [currentPassword release]; [cn release]; + [language release]; [super dealloc]; } @@ -465,7 +466,7 @@ _timeValue (NSString *key) if (values) { // See explanation in -language - language = nil; + [self invalidateLanguage]; // Required parameters for the Web interface. This will trigger the // preferences to load so it's important to leave those calls here. @@ -522,7 +523,7 @@ _timeValue (NSString *key) if (values) { // See explanation in -language - language = nil; + [self invalidateLanguage]; // We propagate the loaded user settings to other sogod instances // which will cache them in SOGoCache (including for the instance @@ -550,7 +551,7 @@ _timeValue (NSString *key) - (void) invalidateLanguage { - language = nil; + DESTROY(language); } - (NSString *) language @@ -563,6 +564,8 @@ _timeValue (NSString *key) // many times when the DB is down, causing a huge delay. if (![language length]) language = [SOGoUser language]; + + [language retain]; } return language;