Submitted By: Andrew Benton Date: 2012-04-23 Initial Package Version: 12.0 Upstream Status: Submitted to Mozilla Bugzilla bug #733867 (not by me) Origin: partly from http://gcc.gnu.org/gcc-4.7/porting_to.html and partly from Mozilla Bugzilla bug #733867 Description: Fixes compiling thunderbird-12.0 with gcc-4.7 The same effect can be achieved with these seds: sed -i '/fcntl.h/a#include ' \ mozilla/ipc/chromium/src/base/file_util_linux.cc sed -i '/fcntl.h/a#include ' \ mozilla/ipc/chromium/src/base/message_pump_libevent.cc sed -i '/sys\/time\.h/a#include ' \ mozilla/ipc/chromium/src/base/time_posix.cc sed -i 's#"MSG_LINEBREAK#" MSG_LINEBREAK#g;s#"CRLF#" CRLF#g' \ mailnews/mime/src/mimemult.cpp \ mailnews/mime/src/mimedrft.cpp \ mailnews/local/src/nsPop3Protocol.cpp \ mailnews/imap/src/nsImapServerResponseParser.cpp \ mailnews/imap/src/nsImapProtocol.cpp \ mailnews/imap/src/nsImapMailFolder.cpp \ mailnews/compose/src/nsSmtpProtocol.cpp \ mailnews/base/src/nsMsgFolderCompactor.cpp \ mailnews/base/search/src/nsMsgSearchAdapter.cpp diff -Naur comm-release-orig/mailnews/base/search/src/nsMsgSearchAdapter.cpp comm-release/mailnews/base/search/src/nsMsgSearchAdapter.cpp --- comm-release-orig/mailnews/base/search/src/nsMsgSearchAdapter.cpp 2012-04-20 23:32:15.000000000 +0100 +++ comm-release/mailnews/base/search/src/nsMsgSearchAdapter.cpp 2012-04-23 11:04:20.605341981 +0100 @@ -688,7 +688,7 @@ PL_strcat(encoding, "{"); lengthStr.AppendInt((PRInt32) strlen(value)); PL_strcat(encoding, lengthStr.get()); - PL_strcat(encoding, "}"CRLF); + PL_strcat(encoding, "}" CRLF); PL_strcat(encoding, value); return NS_OK; } diff -Naur comm-release-orig/mailnews/base/src/nsMsgFolderCompactor.cpp comm-release/mailnews/base/src/nsMsgFolderCompactor.cpp --- comm-release-orig/mailnews/base/src/nsMsgFolderCompactor.cpp 2012-04-20 23:32:15.000000000 +0100 +++ comm-release/mailnews/base/src/nsMsgFolderCompactor.cpp 2012-04-23 11:04:20.588675565 +0100 @@ -758,7 +758,7 @@ } } } -#define EXTRA_KEYWORD_HDR " "MSG_LINEBREAK +#define EXTRA_KEYWORD_HDR " " MSG_LINEBREAK // if status offset isn't in the first block, this code won't work. There's no good reason // for the status offset not to be at the beginning of the message anyway. @@ -1216,7 +1216,7 @@ // check if there's an envelope header; if not, write one. if (strncmp(m_dataBuffer, "From ", 5)) { - m_fileStream->Write("From "CRLF, 7, &bytesWritten); + m_fileStream->Write("From " CRLF, 7, &bytesWritten); m_offlineMsgSize += bytesWritten; } } diff -Naur comm-release-orig/mailnews/compose/src/nsSmtpProtocol.cpp comm-release/mailnews/compose/src/nsSmtpProtocol.cpp --- comm-release-orig/mailnews/compose/src/nsSmtpProtocol.cpp 2012-04-20 23:32:15.000000000 +0100 +++ comm-release/mailnews/compose/src/nsSmtpProtocol.cpp 2012-04-23 11:04:20.548676167 +0100 @@ -1722,7 +1722,7 @@ { m_sendDone = true; nsCOMPtr url = do_QueryInterface(m_runningURL); - SendData(url, "QUIT"CRLF); // send a quit command to close the connection with the server. + SendData(url, "QUIT" CRLF); // send a quit command to close the connection with the server. m_nextState = SMTP_RESPONSE; m_nextStateAfterResponse = SMTP_DONE; return(0); @@ -1969,7 +1969,7 @@ { nsCOMPtr url = do_QueryInterface(m_runningURL); // send a quit command to close the connection with the server. - if (SendData(url, "QUIT"CRLF) == NS_OK) + if (SendData(url, "QUIT" CRLF) == NS_OK) { m_nextState = SMTP_RESPONSE; m_nextStateAfterResponse = SMTP_ERROR_DONE; diff -Naur comm-release-orig/mailnews/imap/src/nsImapMailFolder.cpp comm-release/mailnews/imap/src/nsImapMailFolder.cpp --- comm-release-orig/mailnews/imap/src/nsImapMailFolder.cpp 2012-04-20 23:32:15.000000000 +0100 +++ comm-release/mailnews/imap/src/nsImapMailFolder.cpp 2012-04-23 11:04:20.535343034 +0100 @@ -8309,7 +8309,7 @@ bool needMoreData = false; char * newLine = nsnull; PRUint32 numBytesInLine = 0; - const char *envelope = "From "CRLF; + const char *envelope = "From " CRLF; offlineStore->Write(envelope, strlen(envelope), &bytesWritten); fileSize += bytesWritten; do diff -Naur comm-release-orig/mailnews/imap/src/nsImapProtocol.cpp comm-release/mailnews/imap/src/nsImapProtocol.cpp --- comm-release-orig/mailnews/imap/src/nsImapProtocol.cpp 2012-04-20 23:32:15.000000000 +0100 +++ comm-release/mailnews/imap/src/nsImapProtocol.cpp 2012-04-23 11:04:20.505343485 +0100 @@ -1409,7 +1409,7 @@ { // PRInt32 oldRecent = GetServerStateParser().NumberOfRecentMessages(); nsCAutoString commandBuffer(GetServerCommandTag()); - commandBuffer.Append(" IDLE"CRLF); + commandBuffer.Append(" IDLE" CRLF); do { @@ -3287,7 +3287,7 @@ commandString.Append(messageIds); commandString.Append(" ("); commandString.Append(attribute); - commandString.Append(")"CRLF); + commandString.Append(")" CRLF); nsresult rv = SendData(commandString.get()); if (NS_SUCCEEDED(rv)) @@ -5283,7 +5283,7 @@ IncrementCommandTagNumber(); nsCAutoString command(GetServerCommandTag()); - command.Append(" expunge"CRLF); + command.Append(" expunge" CRLF); nsresult rv = SendData(command.get()); if (NS_SUCCEEDED(rv)) @@ -5359,7 +5359,7 @@ command.Append(gAppName); command.Append("\" \"version\" \""); command.Append(gAppVersion); - command.Append("\")"CRLF); + command.Append("\")" CRLF); nsresult rv = SendData(command.get()); if (NS_SUCCEEDED(rv)) @@ -5816,7 +5816,7 @@ nsCAutoString correctedPassword; EscapeUserNamePasswordString(password.get(), &correctedPassword); command.Append(correctedPassword); - command.Append("\""CRLF); + command.Append("\"" CRLF); rv = SendData(command.get(), true /* suppress logging */); NS_ENSURE_SUCCESS(rv, rv); ParseIMAPandCheckForNewMail(); @@ -7447,7 +7447,7 @@ nsCString command(GetServerCommandTag()); command += " create \""; command += escapedName; - command += "\""CRLF; + command += "\"" CRLF; nsresult rv = SendData(command.get()); if(NS_SUCCEEDED(rv)) @@ -7550,7 +7550,7 @@ nsCString command (GetServerCommandTag()); command += " lsub \"\" \""; command += escapedPattern; - command += "\""CRLF; + command += "\"" CRLF; PR_Free(boxnameWithOnlineDirectory); @@ -7579,7 +7579,7 @@ command += useXLIST ? " xlist \"\" \"" : " list \"\" \""; command += escapedPattern; - command += "\""CRLF; + command += "\"" CRLF; PR_Free(boxnameWithOnlineDirectory); @@ -7600,7 +7600,7 @@ nsCString command (GetServerCommandTag()); command += " subscribe \""; command += escapedName; - command += "\""CRLF; + command += "\"" CRLF; nsresult rv = SendData(command.get()); if (NS_SUCCEEDED(rv)) @@ -7618,7 +7618,7 @@ nsCString command (GetServerCommandTag()); command += " unsubscribe \""; command += escapedName; - command += "\""CRLF; + command += "\"" CRLF; nsresult rv = SendData(command.get()); if (NS_SUCCEEDED(rv)) @@ -7632,7 +7632,7 @@ if (m_urlInProgress) return; nsCAutoString command (GetServerCommandTag()); - command += " IDLE"CRLF; + command += " IDLE" CRLF; nsresult rv = SendData(command.get()); if (NS_SUCCEEDED(rv)) { @@ -7659,7 +7659,7 @@ nsCOMPtr asyncInputStream = do_QueryInterface(m_inputStream); if (asyncInputStream) asyncInputStream->AsyncWait(nsnull, 0, 0, nsnull); - nsresult rv = SendData("DONE"CRLF); + nsresult rv = SendData("DONE" CRLF); // set a short timeout if we don't want to wait for a response if (m_transport && !waitForResponse) m_transport->SetTimeout(nsISocketTransport::TIMEOUT_READ_WRITE, 5); @@ -7728,8 +7728,8 @@ PRUint32 msgsHandled = 0; const char *formatString; formatString = (idsAreUid) - ? "%s uid store %s %s"CRLF - : "%s store %s %s"CRLF; + ? "%s uid store %s %s" CRLF + : "%s store %s %s" CRLF; do { diff -Naur comm-release-orig/mailnews/imap/src/nsImapServerResponseParser.cpp comm-release/mailnews/imap/src/nsImapServerResponseParser.cpp --- comm-release-orig/mailnews/imap/src/nsImapServerResponseParser.cpp 2012-04-20 23:32:15.000000000 +0100 +++ comm-release/mailnews/imap/src/nsImapServerResponseParser.cpp 2012-04-23 11:04:20.452010953 +0100 @@ -185,7 +185,7 @@ NS_ASSERTION(aCurrentCommand && *aCurrentCommand != '\r' && *aCurrentCommand != '\n' && *aCurrentCommand != ' ', "Invailid command string"); - bool sendingIdleDone = !strcmp(aCurrentCommand, "DONE"CRLF); + bool sendingIdleDone = !strcmp(aCurrentCommand, "DONE" CRLF); if (sendingIdleDone) fWaitingForMoreClientInput = false; diff -Naur comm-release-orig/mailnews/local/src/nsPop3Protocol.cpp comm-release/mailnews/local/src/nsPop3Protocol.cpp --- comm-release-orig/mailnews/local/src/nsPop3Protocol.cpp 2012-04-20 23:32:16.000000000 +0100 +++ comm-release/mailnews/local/src/nsPop3Protocol.cpp 2012-04-23 11:04:20.432011254 +0100 @@ -2483,7 +2483,7 @@ return(MK_OUT_OF_MEMORY); m_pop3ConData->next_state_after_response = POP3_GET_LIST; m_listpos = 0; - return SendData(m_url, "LIST"CRLF); + return SendData(m_url, "LIST" CRLF); } diff -Naur comm-release-orig/mailnews/mime/src/mimedrft.cpp comm-release/mailnews/mime/src/mimedrft.cpp --- comm-release-orig/mailnews/mime/src/mimedrft.cpp 2012-04-20 23:32:16.000000000 +0100 +++ comm-release/mailnews/mime/src/mimedrft.cpp 2012-04-23 11:04:20.408678271 +0100 @@ -1473,7 +1473,7 @@ *newbody = 0; PL_strcatn(newbody, newbodylen, "
");
                 PL_strcatn(newbody, newbodylen, body);
-                PL_strcatn(newbody, newbodylen, "
"CRLF); + PL_strcatn(newbody, newbodylen, "" CRLF); PR_Free(body); body = newbody; } diff -Naur comm-release-orig/mailnews/mime/src/mimemult.cpp comm-release/mailnews/mime/src/mimemult.cpp --- comm-release-orig/mailnews/mime/src/mimemult.cpp 2012-04-20 23:32:16.000000000 +0100 +++ comm-release/mailnews/mime/src/mimemult.cpp 2012-04-23 11:04:20.402011705 +0100 @@ -280,7 +280,7 @@ MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK)); MimeWriteAString(obj, NS_LITERAL_CSTRING("Content-Disposition: attachment; filename=\"")); MimeWriteAString(obj, fileName); - MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK)); + MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK)); MimeWriteAString(obj, NS_LITERAL_CSTRING("X-Mozilla-External-Attachment-URL: ")); MimeWriteAString(obj, obj->options->state->detachedFilePath); MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK)); @@ -293,10 +293,10 @@ status = MimeWriteAString(obj, header); if (status < 0) return status; - status = MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK"Content-Transfer-Encoding: 8bit"MSG_LINEBREAK)); + status = MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK"Content-Transfer-Encoding: 8bit" MSG_LINEBREAK)); MimeWriteAString(obj, NS_LITERAL_CSTRING("Content-Disposition: inline; filename=\"Deleted: ")); MimeWriteAString(obj, fileName); - MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK"X-Mozilla-Altered: AttachmentDeleted; date=\"")); + MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK"X-Mozilla-Altered: AttachmentDeleted; date=\"")); } nsCString result; char timeBuffer[128]; @@ -306,8 +306,8 @@ "%a %b %d %H:%M:%S %Y", &now); MimeWriteAString(obj, nsDependentCString(timeBuffer)); - MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK)); - MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK"You deleted an attachment from this message. The original MIME headers for the attachment were:"MSG_LINEBREAK)); + MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK)); + MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK"You deleted an attachment from this message. The original MIME headers for the attachment were:" MSG_LINEBREAK)); MimeHeaders_write_raw_headers(mult->hdrs, obj->options, false); } PRInt32 old_nchildren = container->nchildren; diff -Naur comm-release-orig/mozilla/ipc/chromium/src/base/file_util_linux.cc comm-release/mozilla/ipc/chromium/src/base/file_util_linux.cc --- comm-release-orig/mozilla/ipc/chromium/src/base/file_util_linux.cc 2012-04-20 23:39:41.000000000 +0100 +++ comm-release/mozilla/ipc/chromium/src/base/file_util_linux.cc 2012-04-23 11:03:54.892395244 +0100 @@ -5,6 +5,7 @@ #include "base/file_util.h" #include +#include #include #include diff -Naur comm-release-orig/mozilla/ipc/chromium/src/base/message_pump_libevent.cc comm-release/mozilla/ipc/chromium/src/base/message_pump_libevent.cc --- comm-release-orig/mozilla/ipc/chromium/src/base/message_pump_libevent.cc 2012-04-20 23:39:41.000000000 +0100 +++ comm-release/mozilla/ipc/chromium/src/base/message_pump_libevent.cc 2012-04-23 11:04:00.442311789 +0100 @@ -6,6 +6,7 @@ #include #include +#include #include "eintr_wrapper.h" #include "base/logging.h" diff -Naur comm-release-orig/mozilla/ipc/chromium/src/base/time_posix.cc comm-release/mozilla/ipc/chromium/src/base/time_posix.cc --- comm-release-orig/mozilla/ipc/chromium/src/base/time_posix.cc 2012-04-20 23:39:42.000000000 +0100 +++ comm-release/mozilla/ipc/chromium/src/base/time_posix.cc 2012-04-23 11:04:06.865548542 +0100 @@ -8,6 +8,7 @@ #include #endif #include +#include #ifdef ANDROID #include #else