Bug 971087 - Remove OS/2 support from comm-central: mailnews. r=Standard8

This commit is contained in:
Sebastian Hengst 2014-02-25 14:24:35 +01:00
Родитель 09f57a126b
Коммит dd89b3e664
14 изменённых файлов: 24 добавлений и 221 удалений

Просмотреть файл

@ -875,7 +875,7 @@ static void DIR_ConvertServerFileName(DIR_Server* pServer)
{
char* leafName = pServer->fileName;
char* newLeafName = nullptr;
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
/* jefft -- bug 73349 This is to allow users share same address book.
* It only works if the user specify a full path filename.
*/

Просмотреть файл

@ -71,7 +71,7 @@ NS_ERROR_GENERATE_FAILURE(NS_ERROR_MODULE_MAILNEWS, value)
(((((PRIntn)(VAL)) & 0x7f) == ((PRIntn)(VAL))) && isspace((PRIntn)(VAL)))
#define IS_DIGIT(i) ((((unsigned int) (i)) > 0x7f) ? (int) 0 : isdigit(i))
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
#define IS_ALPHA(VAL) (isascii((int)(VAL)) && isalpha((int)(VAL)))
#else
#define IS_ALPHA(VAL) ((((unsigned int) (VAL)) > 0x7f) ? (int) 0 : isalpha((int)(VAL)))
@ -170,7 +170,7 @@ NS_ERROR_GENERATE_FAILURE(NS_ERROR_MODULE_MAILNEWS, value)
#define NS_ERROR_NNTP_NO_CROSS_POSTING NS_MSG_GENERATE_FAILURE(12554)
#define NS_MSGCOMP_ERROR_END 12999
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
#define MSG_LINEBREAK "\015\012"
#define MSG_LINEBREAK_LEN 2
#else

Просмотреть файл

@ -58,8 +58,6 @@ if CONFIG['NS_PRINTING']:
if CONFIG['OS_ARCH'] == 'WINNT':
SOURCES += ['nsMessengerWinIntegration.cpp']
elif CONFIG['OS_ARCH'] == 'OS2':
SOURCES += ['nsMessengerOS2Integration.cpp']
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'gtk2':
SOURCES += ['nsMessengerUnixIntegration.cpp']

Просмотреть файл

@ -1,141 +0,0 @@
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#define INCL_DOSMEMMGR
#define INCL_DOSERRORS
#include <os2.h>
#include "nsMessengerOS2Integration.h"
#include "nsIMsgAccountManager.h"
#include "nsMsgBaseCID.h"
#include "nsMsgUtils.h"
#define WARPCENTER_SHAREDMEM "\\sharemem\\inbox.mem"
nsMessengerOS2Integration::nsMessengerOS2Integration()
{
PVOID pvObject = NULL;
PULONG pUnreadState = NULL;
APIRET rc = DosGetNamedSharedMem((PVOID *)&pUnreadState, WARPCENTER_SHAREDMEM,
PAG_READ | PAG_WRITE);
if (rc != NO_ERROR) {
#ifdef MOZ_OS2_HIGH_MEMORY
rc = DosAllocSharedMem(&pvObject, WARPCENTER_SHAREDMEM, sizeof(ULONG),
PAG_COMMIT | PAG_WRITE | OBJ_ANY);
if (rc != NO_ERROR) { // Did the kernel handle OBJ_ANY?
// Try again without OBJ_ANY and if the first failure was not caused
// by OBJ_ANY then we will get the same failure, else we have taken
// care of pre-FP13 systems where the kernel couldn't handle it.
rc = DosAllocSharedMem(&pvObject, WARPCENTER_SHAREDMEM, sizeof(ULONG),
PAG_COMMIT | PAG_WRITE);
}
#else
rc = DosAllocSharedMem(&pvObject, WARPCENTER_SHAREDMEM, sizeof(ULONG),
PAG_COMMIT | PAG_WRITE);
#endif
pUnreadState = (PULONG)pvObject;
}
*pUnreadState = 0;
mBiffStateAtom = MsgGetAtom("BiffState");
mTotalUnreadMessagesAtom = MsgGetAtom("TotalUnreadMessages");
}
nsMessengerOS2Integration::~nsMessengerOS2Integration()
{
PULONG pUnreadState = NULL;
APIRET rc = DosGetNamedSharedMem((PVOID *)&pUnreadState, WARPCENTER_SHAREDMEM,
PAG_READ | PAG_WRITE);
if (rc != NO_ERROR) {
rc = DosFreeMem(pUnreadState);
}
}
NS_IMPL_ISUPPORTS2(nsMessengerOS2Integration, nsIMessengerOSIntegration, nsIFolderListener)
nsresult
nsMessengerOS2Integration::Init()
{
nsresult rv;
nsCOMPtr <nsIMsgAccountManager> accountManager =
do_GetService(NS_MSGACCOUNTMANAGER_CONTRACTID, &rv);
NS_ENSURE_SUCCESS(rv,rv);
// because we care if the default server changes
rv = accountManager->AddRootFolderListener(this);
NS_ENSURE_SUCCESS(rv,rv);
return NS_OK;
}
NS_IMETHODIMP
nsMessengerOS2Integration::OnItemPropertyChanged(nsIMsgFolder *, nsIAtom *, char const *, char const *)
{
return NS_OK;
}
NS_IMETHODIMP
nsMessengerOS2Integration::OnItemUnicharPropertyChanged(nsIMsgFolder *, nsIAtom *, const char16_t *, const char16_t *)
{
return NS_OK;
}
NS_IMETHODIMP
nsMessengerOS2Integration::OnItemRemoved(nsIMsgFolder *, nsISupports *)
{
return NS_OK;
}
NS_IMETHODIMP
nsMessengerOS2Integration::OnItemPropertyFlagChanged(nsIMsgDBHdr *item, nsIAtom *property, uint32_t oldFlag, uint32_t newFlag)
{
return NS_OK;
}
NS_IMETHODIMP
nsMessengerOS2Integration::OnItemAdded(nsIMsgFolder *, nsISupports *)
{
return NS_OK;
}
NS_IMETHODIMP
nsMessengerOS2Integration::OnItemBoolPropertyChanged(nsIMsgFolder *aItem, nsIAtom *aProperty, bool aOldValue, bool aNewValue)
{
return NS_OK;
}
NS_IMETHODIMP
nsMessengerOS2Integration::OnItemEvent(nsIMsgFolder *, nsIAtom *)
{
return NS_OK;
}
NS_IMETHODIMP
nsMessengerOS2Integration::OnItemIntPropertyChanged(nsIMsgFolder *aItem, nsIAtom *aProperty, int32_t aOldValue, int32_t aNewValue)
{
PULONG pUnreadState = NULL;
APIRET rc = DosGetNamedSharedMem((PVOID *)&pUnreadState, WARPCENTER_SHAREDMEM,
PAG_READ | PAG_WRITE);
if (rc != NO_ERROR)
return NS_OK;
if (aProperty == mBiffStateAtom) {
if (aNewValue == nsIMsgFolder::nsMsgBiffState_NewMail) {
*pUnreadState = 1;
} else if (aNewValue == nsIMsgFolder::nsMsgBiffState_NoMail) {
*pUnreadState = 0;
} else {
// setting nothing, unknown state (nsIMsgFolder::nsMsgBiffState_Unknown)
}
} else if (aProperty == mTotalUnreadMessagesAtom) {
// do nothing for now
// (we just want to reflect the statusbar mail biff in the system)
}
return NS_OK;
}

Просмотреть файл

@ -1,33 +0,0 @@
/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef __nsMessengerOS2Integration_h
#define __nsMessengerOS2Integration_h
#include "nsIMessengerOSIntegration.h"
#include "nsIFolderListener.h"
#define NS_MESSENGEROS2INTEGRATION_CID \
{0xf62f3d3a, 0x1dd1, 0x11b2, \
{0xa5, 0x16, 0xef, 0xad, 0xb1, 0x31, 0x61, 0x5c}}
class nsMessengerOS2Integration : public nsIMessengerOSIntegration,
public nsIFolderListener
{
public:
nsMessengerOS2Integration();
virtual ~nsMessengerOS2Integration();
virtual nsresult Init();
NS_DECL_ISUPPORTS
NS_DECL_NSIMESSENGEROSINTEGRATION
NS_DECL_NSIFOLDERLISTENER
private:
nsCOMPtr<nsIAtom> mBiffStateAtom;
nsCOMPtr<nsIAtom> mTotalUnreadMessagesAtom;
};
#endif // __nsMessengerOS2Integration_h

Просмотреть файл

@ -3260,7 +3260,7 @@ nsMsgDBFolder::parseURI(bool needServer)
{
// I hope this is temporary - Ultimately,
// NS_MsgCreatePathStringFromFolderURI will need to be fixed.
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
MsgReplaceChar(newPath, '/', '\\');
#endif
rv = serverPath->AppendRelativeNativePath(newPath);

Просмотреть файл

@ -367,8 +367,6 @@ static bool ConvertibleToNative(const nsAutoString& str)
const static uint32_t MAX_LEN = 55;
#elif defined(XP_WIN32)
const static uint32_t MAX_LEN = 55;
#elif defined(XP_OS2)
const static uint32_t MAX_LEN = 55;
#else
#error need_to_define_your_max_filename_length
#endif

Просмотреть файл

@ -6,7 +6,7 @@
#include <stdio.h>
#include <time.h>
#if defined(XP_UNIX) || defined(XP_OS2)
#if defined(XP_UNIX)
#include <unistd.h>
#include <sys/times.h>
#include <sys/time.h>
@ -30,7 +30,7 @@
NS_IMPL_ISUPPORTS1(nsStopwatch, nsIStopwatch)
#if defined(XP_UNIX) || defined(XP_OS2)
#if defined(XP_UNIX)
/** the number of ticks per second */
static double gTicks = 0;
#define MICRO_SECONDS_TO_SECONDS_MULT static_cast<double>(1.0e-6)
@ -51,7 +51,7 @@ nsStopwatch::nsStopwatch()
, fTotalCpuTimeSecs(0.0)
, fRunning(false)
{
#if defined(XP_UNIX) || defined(XP_OS2)
#if defined(XP_UNIX)
// idempotent in the event of a race under all coherency models
if (!gTicks)
{
@ -117,7 +117,7 @@ NS_IMETHODIMP nsStopwatch::GetRealTimeSeconds(double *result)
double nsStopwatch::GetRealTime()
{
#if defined(XP_UNIX) || defined(XP_OS2)
#if defined(XP_UNIX)
struct timeval t;
gettimeofday(&t, NULL);
return t.tv_sec + t.tv_usec * MICRO_SECONDS_TO_SECONDS_MULT;
@ -136,7 +136,7 @@ double nsStopwatch::GetRealTime()
double nsStopwatch::GetCPUTime()
{
#if defined(XP_UNIX) || defined(XP_OS2)
#if defined(XP_UNIX)
struct tms cpt;
times(&cpt);
return (double)(cpt.tms_utime+cpt.tms_stime) / gTicks;

Просмотреть файл

@ -102,9 +102,6 @@
#ifdef XP_WIN
#include "nsMessengerWinIntegration.h"
#endif
#ifdef XP_OS2
#include "nsMessengerOS2Integration.h"
#endif
#ifdef XP_MACOSX
#include "nsMessengerOSXIntegration.h"
#endif
@ -357,9 +354,6 @@ NS_GENERIC_FACTORY_CONSTRUCTOR(nsMsgShutdownService)
#ifdef XP_WIN
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsMessengerWinIntegration, Init)
#endif
#ifdef XP_OS2
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsMessengerOS2Integration, Init)
#endif
#ifdef XP_MACOSX
NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsMessengerOSXIntegration, Init)
#endif
@ -420,9 +414,6 @@ NS_DEFINE_NAMED_CID(NS_MSGNOTIFICATIONSERVICE_CID);
#ifdef XP_WIN
NS_DEFINE_NAMED_CID(NS_MESSENGERWININTEGRATION_CID);
#endif
#ifdef XP_OS2
NS_DEFINE_NAMED_CID(NS_MESSENGEROS2INTEGRATION_CID);
#endif
#ifdef XP_MACOSX
NS_DEFINE_NAMED_CID(NS_MESSENGEROSXINTEGRATION_CID);
#endif
@ -866,9 +857,6 @@ const mozilla::Module::CIDEntry kMailNewsCIDs[] = {
#ifdef XP_WIN
{ &kNS_MESSENGERWININTEGRATION_CID, false, NULL, nsMessengerWinIntegrationConstructor},
#endif
#ifdef XP_OS2
{ &kNS_MESSENGEROS2INTEGRATION_CID, false, NULL, nsMessengerOS2IntegrationConstructor},
#endif
#ifdef XP_MACOSX
{ &kNS_MESSENGEROSXINTEGRATION_CID, false, NULL, nsMessengerOSXIntegrationConstructor},
#endif
@ -1071,9 +1059,6 @@ const mozilla::Module::ContractIDEntry kMailNewsContracts[] = {
#ifdef XP_WIN
{ NS_MESSENGEROSINTEGRATION_CONTRACTID, &kNS_MESSENGERWININTEGRATION_CID },
#endif
#ifdef XP_OS2
{ NS_MESSENGEROSINTEGRATION_CONTRACTID, &kNS_MESSENGEROS2INTEGRATION_CID },
#endif
#ifdef XP_MACOSX
{ NS_MESSENGEROSINTEGRATION_CONTRACTID, &kNS_MESSENGEROSXINTEGRATION_CID },
#endif

Просмотреть файл

@ -30,7 +30,7 @@
#include "nsILineInputStream.h"
#include "EudoraDebugLog.h"
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
#include "nsEudoraWin32.h"
#endif
#ifdef XP_MACOSX
@ -74,7 +74,7 @@ NS_IMETHODIMP nsEudoraFilters::AutoLocate(char16_t **aDescription, nsIFile **aLo
*aDescription = nsEudoraStringBundle::GetStringByID(EUDORAIMPORT_NAME);
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
*_retval = nsEudoraWin32::FindFiltersFile(getter_AddRefs(m_pLocation));
#endif
#ifdef XP_MACOSX
@ -106,7 +106,7 @@ NS_IMETHODIMP nsEudoraFilters::Import(char16_t **aError, bool *_retval)
{
m_pLocation = do_CreateInstance (NS_LOCAL_FILE_CONTRACTID, &rv);
NS_ENSURE_SUCCESS(rv, rv);
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
if (!nsEudoraWin32::FindFiltersFile(getter_AddRefs(m_pLocation)))
m_pLocation = nullptr;
#endif
@ -171,7 +171,7 @@ bool nsEudoraFilters::RealImport()
nsAutoString name;
// Windows Eudora filters files have a version header as a first line - just skip it
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
rv = lineStream->ReadLine(line, &more);
#endif
@ -284,7 +284,7 @@ bool nsEudoraFilters::RealImport()
{
// Win and Mac Eudora have the two bits swapped in the file
uint32_t bits = atoi(pLine + 10);
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
bool bFetch = (bits & 1);
bool bDelete = (bits & 2);
#endif
@ -553,7 +553,7 @@ nsresult nsEudoraFilters::EnableFilter(bool enable)
}
// Different character sets on Windows and Mac put left and right double angle quotes in different spots
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
#define LDAQ "\xAB"
#define RDAQ "\xBB"
#elif XP_MACOSX
@ -861,7 +861,7 @@ nsresult nsEudoraFilters::AddMailboxAction(const char* pMailboxPath, bool isTran
{
nsresult rv;
nsCString nameHierarchy;
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
nsCString filePath;
m_pLocation->GetNativePath(filePath);
int32_t index = filePath.RFindChar('\\');

Просмотреть файл

@ -48,7 +48,7 @@
#include "nsMsgBaseCID.h"
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
#include "nsEudoraWin32.h"
#endif
#ifdef XP_MACOSX
@ -99,7 +99,7 @@ private:
static void ReportSuccess(nsString& name, int32_t count, nsString *pStream);
private:
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
nsEudoraWin32 m_eudora;
#endif
#ifdef XP_MACOSX
@ -154,7 +154,7 @@ private:
static void ReportSuccess(nsString& name, nsString *pStream);
private:
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
nsEudoraWin32 m_eudora;
#endif
#ifdef XP_MACOSX

Просмотреть файл

@ -15,7 +15,7 @@
#include "nsComponentManagerUtils.h"
#include "EudoraDebugLog.h"
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
#include "nsEudoraWin32.h"
#endif
#ifdef XP_MACOSX
@ -64,7 +64,7 @@ NS_IMETHODIMP nsEudoraSettings::AutoLocate(char16_t **description, nsIFile **loc
NS_ENSURE_SUCCESS(rv, rv);
*description = nsEudoraStringBundle::GetStringByID(EUDORAIMPORT_NAME);
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
*_retval = nsEudoraWin32::FindSettingsFile(getter_AddRefs(m_pLocation));
#endif
@ -86,7 +86,7 @@ NS_IMETHODIMP nsEudoraSettings::Import(nsIMsgAccount **localMailAccount, bool *_
// Get the settings file if it doesn't exist
if (!m_pLocation) {
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
nsresult rv;
m_pLocation = do_CreateInstance (NS_LOCAL_FILE_CONTRACTID, &rv);
if (NS_SUCCEEDED(rv)) {
@ -106,7 +106,7 @@ NS_IMETHODIMP nsEudoraSettings::Import(nsIMsgAccount **localMailAccount, bool *_
}
// do the settings import
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
*_retval = nsEudoraWin32::ImportSettings(m_pLocation, localMailAccount);
#endif
#ifdef XP_MACOSX

Просмотреть файл

@ -239,7 +239,7 @@ nsresult nsCreateLocalBaseMessageURI(const nsACString& baseURI, nsCString &baseM
void nsEscapeNativePath(nsCString& nativePath)
{
#if defined(XP_WIN) || defined(XP_OS2)
#if defined(XP_WIN)
nativePath.Insert('/', 0);
MsgReplaceChar(nativePath, '\\', '/');
#endif

Просмотреть файл

@ -778,10 +778,6 @@ pref("dom.max_chrome_script_run_time", 0);
pref("nglayout.enable_drag_images", false);
#endif
#ifdef XP_OS2
pref("mail.compose.max_recycled_windows", 0);
#endif
// For the Empty Junk/Trash confirmation dialogs.
pref("mailnews.emptyJunk.dontAskAgain", false);
pref("mailnews.emptyTrash.dontAskAgain", false);