From 9dedbb0c7d9c0e831969203ab105cda7c71702cb Mon Sep 17 00:00:00 2001 From: Wolfgang Sourdeau Date: Fri, 26 Oct 2007 15:50:27 +0000 Subject: [PATCH] Monotone-Parent: 4557d2116359d7e6bf6cc5b09aa5249747d99199 Monotone-Revision: e662bdb4c427280bc776285f21da6aeb6bb17ddf Monotone-Author: wsourdeau@inverse.ca Monotone-Date: 2007-10-26T15:50:27 Monotone-Branch: ca.inverse.sogo --- ChangeLog | 5 +++++ SoObjects/Mailer/SOGoMailBodyPart.m | 15 ++++++++++----- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8684e5f6f..e91bb16d2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2007-10-26 Wolfgang Sourdeau + * SoObjects/Mailer/SOGoMailBodyPart.m ([SOGoMailBodyPart + -GETAction:]): use the "application/octet-stream" mime type for + elements of type "application/x-xpinstall" to avoid confusing + Firefox. + * UI/PreferencesUI/UIxPreferences.m ([UIxPreferences -messageCheckList]) ([UIxPreferences -itemMessageCheckText]) ([UIxPreferences -userMessageCheck]) diff --git a/SoObjects/Mailer/SOGoMailBodyPart.m b/SoObjects/Mailer/SOGoMailBodyPart.m index fb11b0191..d1a1f42fe 100644 --- a/SoObjects/Mailer/SOGoMailBodyPart.m +++ b/SoObjects/Mailer/SOGoMailBodyPart.m @@ -258,7 +258,7 @@ static BOOL debugOn = NO; NSException *error; WOResponse *r; NSData *data; - NSString *etag; + NSString *etag, *mimeType; if ((error = [self matchesRequestConditionInContext:_ctx]) != nil) { // TODO: currently we fetch the body structure to get here - check this! @@ -283,14 +283,19 @@ static BOOL debugOn = NO; // TODO: wrong, could be encoded r = [(WOContext *)_ctx response]; - [r setHeader:[self davContentType] forKey:@"content-type"]; - [r setHeader:[NSString stringWithFormat:@"%d", [data length]] - forKey:@"content-length"]; - + mimeType = [self davContentType]; + if ([mimeType isEqualToString: @"application/x-xpinstall"]) + mimeType = @"application/octet-stream"; + + [r setHeader: mimeType forKey:@"content-type"]; + [r setHeader: [NSString stringWithFormat:@"%d", [data length]] + forKey: @"content-length"]; + if ((etag = [self davEntityTag]) != nil) [r setHeader:etag forKey:@"etag"]; [r setContent:data]; + return r; }