Monotone-Parent: b7149a366c94f57bf67d221e26b33ecf51930a27

Monotone-Revision: 82ab0f7d7b6c98e27ed4319b3bca575f56e5ff46

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2011-10-03T23:35:49
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau 2011-10-03 23:35:49 +00:00
parent 3d678542e6
commit f8d2a22dcf
2 changed files with 11 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2011-10-03 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* OpenChange/MAPIStoreFolder.m (-deleteMessageWithMID:andFlags:):
invoke "prepareDelete" on the message object when available.
2011-10-03 Francis Lachapelle <flachapelle@inverse.ca> 2011-10-03 Francis Lachapelle <flachapelle@inverse.ca>
* UI/WebServerResources/generic.js (snoozeAlarm): new function to * UI/WebServerResources/generic.js (snoozeAlarm): new function to

View file

@ -28,6 +28,7 @@
#import <Foundation/NSString.h> #import <Foundation/NSString.h>
#import <Foundation/NSURL.h> #import <Foundation/NSURL.h>
#import <NGExtensions/NSObject+Logs.h> #import <NGExtensions/NSObject+Logs.h>
#import <SOGo/SOGoContentObject.h>
#import <SOGo/SOGoFolder.h> #import <SOGo/SOGoFolder.h>
#import "MAPIStoreActiveTables.h" #import "MAPIStoreActiveTables.h"
@ -466,6 +467,7 @@ Class NSExceptionK, MAPIStoreFAIMessageK, MAPIStoreMessageTableK, MAPIStoreFAIMe
MAPIStoreMessage *message; MAPIStoreMessage *message;
NSArray *activeTables; NSArray *activeTables;
NSUInteger count, max; NSUInteger count, max;
id msgObject;
struct mapistore_connection_info *connInfo; struct mapistore_connection_info *connInfo;
struct mapistore_object_notification_parameters *notif_parameters; struct mapistore_object_notification_parameters *notif_parameters;
int rc; int rc;
@ -488,7 +490,10 @@ Class NSExceptionK, MAPIStoreFAIMessageK, MAPIStoreMessageTableK, MAPIStoreFAIMe
for (count = 0; count < max; count++) for (count = 0; count < max; count++)
[[activeTables objectAtIndex: count] restrictedChildKeys]; [[activeTables objectAtIndex: count] restrictedChildKeys];
if ([[message sogoObject] delete]) msgObject = [message sogoObject];
if (([msgObject respondsToSelector: @selector (prepareDelete)]
&& [msgObject prepareDelete])
|| [msgObject delete])
{ {
rc = MAPISTORE_ERROR; rc = MAPISTORE_ERROR;
[self logWithFormat: @"ERROR deleting object at URL: %@", childURL]; [self logWithFormat: @"ERROR deleting object at URL: %@", childURL];