diff --git a/CMakeLists.txt b/CMakeLists.txt index 28ce2941..2a3da4c9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -67,6 +67,11 @@ set(libs) # Depending on the platform, pass in the required defines. if (UNIX) + # warnings as errors: + # we have a problem with people checking in code with warnings. + set(CMAKE_CXX_FLAGS "-Werror") + + # For config.h, detect the libraries, functions, etc. include(CheckIncludeFiles) include(CheckLibraryExists) diff --git a/src/lib/common/common.h b/src/lib/common/common.h index 84c1f18f..2ee5a253 100644 --- a/src/lib/common/common.h +++ b/src/lib/common/common.h @@ -131,19 +131,15 @@ // math functions we define __FP__, the include guard macro for fp.h, to // prevent fp.h from being included. #if defined(__APPLE__) -#define __FP__ +# define __FP__ #endif // define NULL #include -// we don't want to use NULL since it's old and nasty, so replace any -// usages with nullptr (warning: this could break many things). -// if not c++0x yet, future proof code by allowing use of nullptr -#ifdef nullptr -#define NULL nullptr -#else -#define nullptr NULL +// if not c++0x, future proof code by allowing use of nullptr +#ifndef nullptr +# define nullptr NULL #endif // make assert available since we use it a lot diff --git a/src/lib/io/CCryptoMode.cpp b/src/lib/io/CCryptoMode.cpp index b28535d5..624489ef 100644 --- a/src/lib/io/CCryptoMode.cpp +++ b/src/lib/io/CCryptoMode.cpp @@ -60,18 +60,10 @@ CCryptoMode::~CCryptoMode() } if (m_encryption) { - switch (m_mode) { - case kCfb: - delete reinterpret_cast(m_crypto); - break; - } + delete reinterpret_cast(m_crypto); } else { - switch (m_mode) { - case kCfb: - delete reinterpret_cast(m_crypto); - break; - } + delete reinterpret_cast(m_crypto); } } @@ -83,18 +75,10 @@ CCryptoMode::processData(byte* out, const byte* in, size_t length) } if (m_encryption) { - switch (m_mode) { - case kCfb: - reinterpret_cast(m_crypto)->ProcessData(out, in, length); - break; - } + reinterpret_cast(m_crypto)->ProcessData(out, in, length); } else { - switch (m_mode) { - case kCfb: - reinterpret_cast(m_crypto)->ProcessData(out, in, length); - break; - } + reinterpret_cast(m_crypto)->ProcessData(out, in, length); } } @@ -107,17 +91,9 @@ CCryptoMode::setKeyWithIv(const byte* key, size_t length, const byte* iv) } if (m_encryption) { - switch (m_mode) { - case kCfb: - reinterpret_cast(m_crypto)->SetKeyWithIV(key, length, iv); - break; - } + reinterpret_cast(m_crypto)->SetKeyWithIV(key, length, iv); } else { - switch (m_mode) { - case kCfb: - reinterpret_cast(m_crypto)->SetKeyWithIV(key, length, iv); - break; - } + reinterpret_cast(m_crypto)->SetKeyWithIV(key, length, iv); } } diff --git a/src/lib/io/CCryptoMode.h b/src/lib/io/CCryptoMode.h index 9b7e8ada..5c2f8cc3 100644 --- a/src/lib/io/CCryptoMode.h +++ b/src/lib/io/CCryptoMode.h @@ -17,11 +17,17 @@ #pragma once +#include "ECryptoMode.h" +#include "CString.h" + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wtautological-compare" +#pragma GCC diagnostic ignored "-Wunused-variable" +#pragma GCC diagnostic ignored "-Wunused-function" #include #include #include -#include "ECryptoMode.h" -#include "CString.h" +#pragma GCC diagnostic pop //! Encapsulation of modes /*! diff --git a/src/lib/io/CCryptoOptions.cpp b/src/lib/io/CCryptoOptions.cpp index fd8514bb..32d3ceb7 100644 --- a/src/lib/io/CCryptoOptions.cpp +++ b/src/lib/io/CCryptoOptions.cpp @@ -21,8 +21,8 @@ CCryptoOptions::CCryptoOptions( const CString& modeString, const CString& pass) : - m_mode(parseMode(modeString)), - m_pass(pass) + m_pass(pass), + m_mode(parseMode(modeString)) { } diff --git a/src/lib/io/CCryptoStream.h b/src/lib/io/CCryptoStream.h index b353541e..c771d0c0 100644 --- a/src/lib/io/CCryptoStream.h +++ b/src/lib/io/CCryptoStream.h @@ -20,9 +20,14 @@ #include "BasicTypes.h" #include "CStreamFilter.h" #include "CCryptoMode.h" + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wall" #include #include +#pragma GCC diagnostic pop + class CCryptoOptions; #define CRYPTO_IV_SIZE CryptoPP::AES::BLOCKSIZE diff --git a/src/lib/io/CStreamFilter.cpp b/src/lib/io/CStreamFilter.cpp index 0ca412a2..04777d9e 100644 --- a/src/lib/io/CStreamFilter.cpp +++ b/src/lib/io/CStreamFilter.cpp @@ -25,10 +25,9 @@ // CStreamFilter::CStreamFilter(IEventQueue* events, synergy::IStream* stream, bool adoptStream) : - IStream(events), - m_events(events), m_stream(stream), - m_adopted(adoptStream) + m_adopted(adoptStream), + m_events(events) { // replace handlers for m_stream m_events->removeHandlers(m_stream->getEventTarget()); diff --git a/src/lib/io/IStream.h b/src/lib/io/IStream.h index 5e8f34c1..ca2fb6a0 100644 --- a/src/lib/io/IStream.h +++ b/src/lib/io/IStream.h @@ -34,7 +34,7 @@ Defines the interface for all streams. */ class IStream : public IInterface { public: - IStream(IEventQueue* events) : m_events(events) { } + IStream() { } //! @name manipulators //@{ @@ -116,9 +116,6 @@ public: virtual UInt32 getSize() const = 0; //@} - -private: - IEventQueue* m_events; }; } diff --git a/src/lib/ipc/CIpcClient.cpp b/src/lib/ipc/CIpcClient.cpp index 30a1bba6..415e8d20 100644 --- a/src/lib/ipc/CIpcClient.cpp +++ b/src/lib/ipc/CIpcClient.cpp @@ -28,8 +28,8 @@ CIpcClient::CIpcClient(IEventQueue* events, CSocketMultiplexer* socketMultiplexer) : m_serverAddress(CNetworkAddress(IPC_HOST, IPC_PORT)), - m_server(nullptr), m_socket(events, socketMultiplexer), + m_server(nullptr), m_events(events) { init(); @@ -37,8 +37,8 @@ CIpcClient::CIpcClient(IEventQueue* events, CSocketMultiplexer* socketMultiplexe CIpcClient::CIpcClient(IEventQueue* events, CSocketMultiplexer* socketMultiplexer, int port) : m_serverAddress(CNetworkAddress(IPC_HOST, port)), - m_server(nullptr), m_socket(events, socketMultiplexer), + m_server(nullptr), m_events(events) { init(); diff --git a/src/lib/ipc/CIpcServer.cpp b/src/lib/ipc/CIpcServer.cpp index cd91ab68..d529d3fd 100644 --- a/src/lib/ipc/CIpcServer.cpp +++ b/src/lib/ipc/CIpcServer.cpp @@ -32,17 +32,17 @@ // CIpcServer::CIpcServer(IEventQueue* events, CSocketMultiplexer* socketMultiplexer) : - m_events(events), m_socket(events, socketMultiplexer), - m_address(CNetworkAddress(IPC_HOST, IPC_PORT)) + m_address(CNetworkAddress(IPC_HOST, IPC_PORT)), + m_events(events) { init(); } CIpcServer::CIpcServer(IEventQueue* events, CSocketMultiplexer* socketMultiplexer, int port) : - m_events(events), m_socket(events, socketMultiplexer), - m_address(CNetworkAddress(IPC_HOST, port)) + m_address(CNetworkAddress(IPC_HOST, port)), + m_events(events) { init(); } diff --git a/src/lib/ipc/CIpcServerProxy.cpp b/src/lib/ipc/CIpcServerProxy.cpp index d9f5a18a..cd53e6b5 100644 --- a/src/lib/ipc/CIpcServerProxy.cpp +++ b/src/lib/ipc/CIpcServerProxy.cpp @@ -29,8 +29,8 @@ // CIpcServerProxy::CIpcServerProxy(synergy::IStream& stream, IEventQueue* events) : - m_events(events), - m_stream(stream) + m_stream(stream), + m_events(events) { m_events->adoptHandler(m_events->forIStream().inputReady(), stream.getEventTarget(), diff --git a/src/lib/net/CTCPSocket.cpp b/src/lib/net/CTCPSocket.cpp index 77db4024..61bdb2b4 100644 --- a/src/lib/net/CTCPSocket.cpp +++ b/src/lib/net/CTCPSocket.cpp @@ -37,9 +37,9 @@ CTCPSocket::CTCPSocket(IEventQueue* events, CSocketMultiplexer* socketMultiplexer) : IDataSocket(events), - m_events(events), m_mutex(), m_flushed(&m_mutex, true), + m_events(events), m_socketMultiplexer(socketMultiplexer) { try { @@ -54,10 +54,10 @@ CTCPSocket::CTCPSocket(IEventQueue* events, CSocketMultiplexer* socketMultiplexe CTCPSocket::CTCPSocket(IEventQueue* events, CSocketMultiplexer* socketMultiplexer, CArchSocket socket) : IDataSocket(events), - m_events(events), m_mutex(), m_socket(socket), m_flushed(&m_mutex, true), + m_events(events), m_socketMultiplexer(socketMultiplexer) { assert(m_socket != NULL); diff --git a/src/lib/net/IDataSocket.h b/src/lib/net/IDataSocket.h index 627ba710..b5b0fa36 100644 --- a/src/lib/net/IDataSocket.h +++ b/src/lib/net/IDataSocket.h @@ -37,7 +37,7 @@ public: CString m_what; }; - IDataSocket(IEventQueue* events) : IStream(events) { } + IDataSocket(IEventQueue* events) { } //! @name manipulators //@{ diff --git a/src/lib/platform/COSXDragView.h b/src/lib/platform/COSXDragView.h index 5c2438d2..41cf2744 100644 --- a/src/lib/platform/COSXDragView.h +++ b/src/lib/platform/COSXDragView.h @@ -24,8 +24,8 @@ NSMutableString* m_dropTarget; } --(CFStringRef)getDropTarget; --(void)clearDropTarget; +- (CFStringRef)getDropTarget; +- (void)clearDropTarget; @end diff --git a/src/lib/platform/COSXDragView.m b/src/lib/platform/COSXDragView.m index 18dec727..ae954272 100644 --- a/src/lib/platform/COSXDragView.m +++ b/src/lib/platform/COSXDragView.m @@ -21,6 +21,10 @@ @implementation COSXDragView +@dynamic draggingFormation; +@dynamic animatesToDestination; +@dynamic numberOfValidItemsForDrop; + - (id) initWithFrame:(NSRect)frame { @@ -69,13 +73,13 @@ namesOfPromisedFilesDroppedAtDestination:(NSURL *)dropDestination return nil; } --(NSDragOperation) +- (NSDragOperation) draggingSourceOperationMaskForLocal:(BOOL)flag { return NSDragOperationCopy; } --(CFStringRef) +- (CFStringRef) getDropTarget { NSMutableString* string; @@ -84,12 +88,69 @@ getDropTarget return (CFStringRef)string; } --(void) +- (void) clearDropTarget { [m_dropTarget setString:@""]; } +- (NSWindow *) +draggingDestinationWindow +{ + return nil; +} + +- (NSDragOperation) +draggingSourceOperationMask +{ + return NSDragOperationNone; +} + +- (NSPoint)draggingLocation +{ + NSPoint point; + return point; +} + +- (NSPoint)draggedImageLocation +{ + NSPoint point; + return point; +} + +- (NSImage *)draggedImage +{ + return nil; +} + +- (NSPasteboard *)draggingPasteboard +{ + return nil; +} + +- (id)draggingSource +{ + return nil; +} + +- (NSInteger)draggingSequenceNumber +{ + return nil; +} + +- (void)slideDraggedImageTo:(NSPoint)screenPoint +{ +} + +- (NSDragOperation)draggingSession:(NSDraggingSession *)session sourceOperationMaskForDraggingContext:(NSDraggingContext)context +{ + return NSDragOperationNone; +} + +- (void)enumerateDraggingItemsWithOptions:(NSDraggingItemEnumerationOptions)enumOpts forView:(NSView *)view classes:(NSArray *)classArray searchOptions:(NSDictionary *)searchOptions usingBlock:(void (^)(NSDraggingItem *draggingItem, NSInteger idx, BOOL *stop))block +{ +} + @end #endif diff --git a/src/lib/platform/COSXEventQueueBuffer.cpp b/src/lib/platform/COSXEventQueueBuffer.cpp index 5c572550..90e96378 100644 --- a/src/lib/platform/COSXEventQueueBuffer.cpp +++ b/src/lib/platform/COSXEventQueueBuffer.cpp @@ -31,8 +31,8 @@ class CEventQueueTimer { }; // COSXEventQueueBuffer::COSXEventQueueBuffer(IEventQueue* events) : - m_eventQueue(events), m_event(NULL), + m_eventQueue(events), m_carbonEventQueue(NULL) { // do nothing diff --git a/src/lib/platform/COSXScreen.cpp b/src/lib/platform/COSXScreen.cpp index 0945dc91..c18584e6 100644 --- a/src/lib/platform/COSXScreen.cpp +++ b/src/lib/platform/COSXScreen.cpp @@ -70,11 +70,10 @@ bool COSXScreen::s_hasGHOM = false; COSXScreen::COSXScreen(IEventQueue* events, bool isPrimary, bool autoShowHideCursor) : CPlatformScreen(events), - m_events(events), - MouseButtonEventMap(NumButtonIDs), m_isPrimary(isPrimary), m_isOnScreen(m_isPrimary), m_cursorPosValid(false), + MouseButtonEventMap(NumButtonIDs), m_cursorHidden(false), m_dragNumButtonsDown(0), m_dragTimer(NULL), @@ -90,16 +89,17 @@ COSXScreen::COSXScreen(IEventQueue* events, bool isPrimary, bool autoShowHideCur m_pmMutex(new CMutex), m_pmWatchThread(NULL), m_pmThreadReady(new CCondVar(m_pmMutex, false)), + m_pmRootPort(0), m_activeModifierHotKey(0), m_activeModifierHotKeyMask(0), + m_eventTapPort(nullptr), + m_eventTapRLSR(nullptr), m_lastSingleClick(0), m_lastDoubleClick(0), m_lastSingleClickXCursor(0), m_lastSingleClickYCursor(0), m_autoShowHideCursor(autoShowHideCursor), - m_eventTapRLSR(nullptr), - m_eventTapPort(nullptr), - m_pmRootPort(0), + m_events(events), m_getDropTargetThread(NULL) { try { @@ -444,11 +444,12 @@ void COSXScreen::constructMouseButtonEventMap() { const CGEventType source[NumButtonIDs][3] = { - kCGEventLeftMouseUp,kCGEventLeftMouseDragged,kCGEventLeftMouseDown, - kCGEventOtherMouseUp,kCGEventOtherMouseDragged,kCGEventOtherMouseDown, - kCGEventRightMouseUp,kCGEventRightMouseDragged,kCGEventRightMouseDown, - kCGEventOtherMouseUp,kCGEventOtherMouseDragged,kCGEventOtherMouseDown, - kCGEventOtherMouseUp,kCGEventOtherMouseDragged,kCGEventOtherMouseDown}; + {kCGEventLeftMouseUp, kCGEventLeftMouseDragged, kCGEventLeftMouseDown}, + {kCGEventOtherMouseUp, kCGEventOtherMouseDragged, kCGEventOtherMouseDown}, + {kCGEventRightMouseUp, kCGEventRightMouseDragged, kCGEventRightMouseDown}, + {kCGEventOtherMouseUp, kCGEventOtherMouseDragged, kCGEventOtherMouseDown}, + {kCGEventOtherMouseUp, kCGEventOtherMouseDragged, kCGEventOtherMouseDown} + }; for (UInt16 button = 0; button < NumButtonIDs; button++) { MouseButtonEventMapType new_map; @@ -746,9 +747,15 @@ COSXScreen::showCursor() // appears to fix "mouse randomly not showing" bug CGAssociateMouseAndMouseCursorPosition(true); +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" + + // CGCursorIsVisible is probably deprecated because its unreliable. if (!CGCursorIsVisible()) { LOG((CLOG_WARN "cursor may not be visible")); } + +#pragma GCC diagnostic pop m_cursorHidden = false; } @@ -775,9 +782,15 @@ COSXScreen::hideCursor() // appears to fix "mouse randomly not hiding" bug CGAssociateMouseAndMouseCursorPosition(true); +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" + + // CGCursorIsVisible is probably deprecated because its unreliable. if (CGCursorIsVisible()) { LOG((CLOG_WARN "cursor may be still visible")); } + +#pragma GCC diagnostic pop m_cursorHidden = true; } @@ -871,7 +884,13 @@ COSXScreen::enter() showCursor(); if (m_isPrimary) { + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" + CGSetLocalEventsSuppressionInterval(0.0); + +#pragma GCC diagnostic pop // enable global hotkeys //setGlobalHotKeysEnabled(true); @@ -891,6 +910,9 @@ COSXScreen::enter() IOObjectRelease(entry); } +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" + // avoid suppression of local hardware events // stkamp@users.sourceforge.net CGSetLocalEventsFilterDuringSupressionState( @@ -900,6 +922,9 @@ COSXScreen::enter() (kCGEventFilterMaskPermitLocalKeyboardEvents | kCGEventFilterMaskPermitSystemDefinedEvents), kCGEventSupressionStateRemoteMouseDrag); + +#pragma GCC diagnostic pop + } // now on screen @@ -941,6 +966,9 @@ COSXScreen::leave() // warp to center //warpCursor(m_xCenter, m_yCenter); +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" + // This used to be necessary to get smooth mouse motion on other screens, // but now is just to avoid a hesitating cursor when transitioning to // the primary (this) screen. @@ -948,6 +976,9 @@ COSXScreen::leave() // disable global hotkeys //setGlobalHotKeysEnabled(false); + +#pragma GCC diagnostic pop + } else { // warp the mouse to the cursor center diff --git a/src/lib/platform/COSXScreenSaver.cpp b/src/lib/platform/COSXScreenSaver.cpp index ac09ddbd..11006fde 100644 --- a/src/lib/platform/COSXScreenSaver.cpp +++ b/src/lib/platform/COSXScreenSaver.cpp @@ -22,15 +22,22 @@ #import "IEventQueue.h" #import "IPrimaryScreen.h" #import +#import + +void +getProcessSerialNumber(const char* name, ProcessSerialNumber& psn); + +bool +testProcessName(const char* name, const ProcessSerialNumber& psn); // // COSXScreenSaver // COSXScreenSaver::COSXScreenSaver(IEventQueue* events, void* eventTarget) : - m_events(events), m_eventTarget(eventTarget), - m_enabled(true) + m_enabled(true), + m_events(events) { m_autoReleasePool = screenSaverUtilCreatePool(); m_screenSaverController = screenSaverUtilCreateController(); @@ -51,29 +58,9 @@ COSXScreenSaver::COSXScreenSaver(IEventQueue* events, void* eventTarget) : m_screenSaverPSN.highLongOfPSN = 0; m_screenSaverPSN.lowLongOfPSN = 0; - - // test if screensaver is running and find process number + if (isActive()) { - ProcessInfoRec procInfo; - Str31 procName; // pascal string. first byte holds length. - memset(&procInfo, 0, sizeof(procInfo)); - procInfo.processName = procName; - procInfo.processInfoLength = sizeof(ProcessInfoRec); - - ProcessSerialNumber psn; - OSErr err = GetNextProcess(&psn); - while (err == 0) { - memset(procName, 0, sizeof(procName)); - err = GetProcessInformation(&psn, &procInfo); - if (err != 0) { - break; - } - if (strcmp("ScreenSaverEngine", (const char*)&procName[1]) == 0) { - m_screenSaverPSN = psn; - break; - } - err = GetNextProcess(&psn); - } + getProcessSerialNumber("ScreenSaverEngine", m_screenSaverPSN); } } @@ -119,10 +106,7 @@ COSXScreenSaver::isActive() const void COSXScreenSaver::processLaunched(ProcessSerialNumber psn) { - CFStringRef processName; - OSStatus err = CopyProcessName(&psn, &processName); - - if (err == 0 && CFEqual(CFSTR("ScreenSaverEngine"), processName)) { + if (testProcessName("ScreenSaverEngine", psn)) { m_screenSaverPSN = psn; LOG((CLOG_DEBUG1 "ScreenSaverEngine launched. Enabled=%d", m_enabled)); if (m_enabled) { @@ -178,3 +162,41 @@ COSXScreenSaver::launchTerminationCallback( } return (CallNextEventHandler(nextHandler, theEvent)); } + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" + +void +getProcessSerialNumber(const char* name, ProcessSerialNumber& psn) +{ + ProcessInfoRec procInfo; + Str31 procName; // pascal string. first byte holds length. + memset(&procInfo, 0, sizeof(procInfo)); + procInfo.processName = procName; + procInfo.processInfoLength = sizeof(ProcessInfoRec); + + ProcessSerialNumber checkPsn; + OSErr err = GetNextProcess(&checkPsn); + while (err == 0) { + memset(procName, 0, sizeof(procName)); + err = GetProcessInformation(&checkPsn, &procInfo); + if (err != 0) { + break; + } + if (strcmp(name, (const char*)&procName[1]) == 0) { + psn = checkPsn; + break; + } + err = GetNextProcess(&checkPsn); + } +} + +bool +testProcessName(const char* name, const ProcessSerialNumber& psn) +{ + CFStringRef processName; + OSStatus err = CopyProcessName(&psn, &processName); + return (err == 0 && CFEqual(CFSTR("ScreenSaverEngine"), processName)); +} + +#pragma GCC diagnostic pop diff --git a/src/lib/server/CClientProxy.h b/src/lib/server/CClientProxy.h index ca9cbf73..61dd87b6 100644 --- a/src/lib/server/CClientProxy.h +++ b/src/lib/server/CClientProxy.h @@ -84,7 +84,6 @@ public: virtual void screensaver(bool activate) = 0; virtual void resetOptions() = 0; virtual void setOptions(const COptionsList& options) = 0; - virtual void cryptoIv(const UInt8* iv) = 0; virtual void draggingInfoSending(UInt32 fileCount, const char* data, size_t dataSize) = 0; virtual void fileChunkSending(UInt8 mark, char* data, size_t dataSize) = 0; diff --git a/src/lib/server/CClientProxy1_0.cpp b/src/lib/server/CClientProxy1_0.cpp index 531d2997..b2bc417e 100644 --- a/src/lib/server/CClientProxy1_0.cpp +++ b/src/lib/server/CClientProxy1_0.cpp @@ -358,13 +358,6 @@ CClientProxy1_0::mouseWheel(SInt32, SInt32 yDelta) CProtocolUtil::writef(getStream(), kMsgDMouseWheel1_0, yDelta); } -void -CClientProxy1_0::cryptoIv(const UInt8* iv) -{ - // ignore -- not supported in protocol 1.0 - LOG((CLOG_DEBUG "cryptoIv not supported")); -} - void CClientProxy1_0::draggingInfoSending(UInt32 fileCount, const char* data, size_t dataSize) { diff --git a/src/lib/server/CClientProxy1_0.h b/src/lib/server/CClientProxy1_0.h index 2935fc90..7cfb147f 100644 --- a/src/lib/server/CClientProxy1_0.h +++ b/src/lib/server/CClientProxy1_0.h @@ -59,7 +59,6 @@ public: virtual void screensaver(bool activate); virtual void resetOptions(); virtual void setOptions(const COptionsList& options); - virtual void cryptoIv(const UInt8* iv); virtual void draggingInfoSending(UInt32 fileCount, const char* data, size_t dataSize); virtual void fileChunkSending(UInt8 mark, char* data, size_t dataSize); diff --git a/src/lib/server/CClientProxy1_3.cpp b/src/lib/server/CClientProxy1_3.cpp index ac6732b0..7062c3d6 100644 --- a/src/lib/server/CClientProxy1_3.cpp +++ b/src/lib/server/CClientProxy1_3.cpp @@ -30,9 +30,9 @@ CClientProxy1_3::CClientProxy1_3(const CString& name, synergy::IStream* stream, IEventQueue* events) : CClientProxy1_2(name, stream, events), - m_events(events), m_keepAliveRate(kKeepAliveRate), - m_keepAliveTimer(NULL) + m_keepAliveTimer(NULL), + m_events(events) { setHeartbeatRate(kKeepAliveRate, kKeepAliveRate * kKeepAlivesUntilDeath); } diff --git a/src/lib/server/CClientProxyUnknown.cpp b/src/lib/server/CClientProxyUnknown.cpp index 4dc62330..65fda47e 100644 --- a/src/lib/server/CClientProxyUnknown.cpp +++ b/src/lib/server/CClientProxyUnknown.cpp @@ -39,11 +39,11 @@ // CClientProxyUnknown::CClientProxyUnknown(synergy::IStream* stream, double timeout, CServer* server, IEventQueue* events) : - m_events(events), m_stream(stream), m_proxy(NULL), m_ready(false), - m_server(server) + m_server(server), + m_events(events) { assert(m_server != NULL); diff --git a/src/lib/server/CConfig.cpp b/src/lib/server/CConfig.cpp index 06af6ac0..d4868165 100644 --- a/src/lib/server/CConfig.cpp +++ b/src/lib/server/CConfig.cpp @@ -31,9 +31,9 @@ // CConfig::CConfig(IEventQueue* events) : - m_events(events), + m_inputFilter(events), m_hasLockToScreenAction(false), - m_inputFilter(events) + m_events(events) { // do nothing } diff --git a/src/lib/server/CInputFilter.cpp b/src/lib/server/CInputFilter.cpp index 2b9d983b..7de09347 100644 --- a/src/lib/server/CInputFilter.cpp +++ b/src/lib/server/CInputFilter.cpp @@ -53,20 +53,20 @@ CInputFilter::CCondition::disablePrimary(CPrimaryClient*) CInputFilter::CKeystrokeCondition::CKeystrokeCondition( IEventQueue* events, IPlatformScreen::CKeyInfo* info) : - m_events(events), m_id(0), m_key(info->m_key), - m_mask(info->m_mask) + m_mask(info->m_mask), + m_events(events) { free(info); } CInputFilter::CKeystrokeCondition::CKeystrokeCondition( IEventQueue* events, KeyID key, KeyModifierMask mask) : - m_events(events), m_id(0), m_key(key), - m_mask(mask) + m_mask(mask), + m_events(events) { // do nothing } @@ -143,18 +143,18 @@ CInputFilter::CKeystrokeCondition::disablePrimary(CPrimaryClient* primary) CInputFilter::CMouseButtonCondition::CMouseButtonCondition( IEventQueue* events, IPlatformScreen::CButtonInfo* info) : - m_events(events), m_button(info->m_button), - m_mask(info->m_mask) + m_mask(info->m_mask), + m_events(events) { free(info); } CInputFilter::CMouseButtonCondition::CMouseButtonCondition( IEventQueue* events, ButtonID button, KeyModifierMask mask) : - m_events(events), m_button(button), - m_mask(mask) + m_mask(mask), + m_events(events) { // do nothing } @@ -227,8 +227,8 @@ CInputFilter::CMouseButtonCondition::match(const CEvent& event) CInputFilter::CScreenConnectedCondition::CScreenConnectedCondition( IEventQueue* events, const CString& screen) : - m_events(events), - m_screen(screen) + m_screen(screen), + m_events(events) { // do nothing } @@ -279,8 +279,8 @@ CInputFilter::CAction::~CAction() CInputFilter::CLockCursorToScreenAction::CLockCursorToScreenAction( IEventQueue* events, Mode mode) : - m_events(events), - m_mode(mode) + m_mode(mode), + m_events(events) { // do nothing } @@ -324,8 +324,8 @@ CInputFilter::CLockCursorToScreenAction::perform(const CEvent& event) CInputFilter::CSwitchToScreenAction::CSwitchToScreenAction( IEventQueue* events, const CString& screen) : - m_events(events), - m_screen(screen) + m_screen(screen), + m_events(events) { // do nothing } @@ -370,8 +370,8 @@ CInputFilter::CSwitchToScreenAction::perform(const CEvent& event) CInputFilter::CSwitchInDirectionAction::CSwitchInDirectionAction( IEventQueue* events, EDirection direction) : - m_events(events), - m_direction(direction) + m_direction(direction), + m_events(events) { // do nothing } @@ -414,8 +414,8 @@ CInputFilter::CSwitchInDirectionAction::perform(const CEvent& event) CInputFilter::CKeyboardBroadcastAction::CKeyboardBroadcastAction( IEventQueue* events, Mode mode) : - m_events(events), - m_mode(mode) + m_mode(mode), + m_events(events) { // do nothing } @@ -424,9 +424,9 @@ CInputFilter::CKeyboardBroadcastAction::CKeyboardBroadcastAction( IEventQueue* events, Mode mode, const std::set& screens) : - m_events(events), m_mode(mode), - m_screens(IKeyState::CKeyInfo::join(screens)) + m_screens(IKeyState::CKeyInfo::join(screens)), + m_events(events) { // do nothing } @@ -486,9 +486,9 @@ CInputFilter::CKeyboardBroadcastAction::perform(const CEvent& event) CInputFilter::CKeystrokeAction::CKeystrokeAction( IEventQueue* events, IPlatformScreen::CKeyInfo* info, bool press) : - m_events(events), m_keyInfo(info), - m_press(press) + m_press(press), + m_events(events) { // do nothing } @@ -574,9 +574,9 @@ CInputFilter::CKeystrokeAction::formatName() const CInputFilter::CMouseButtonAction::CMouseButtonAction( IEventQueue* events, IPlatformScreen::CButtonInfo* info, bool press) : - m_events(events), m_buttonInfo(info), - m_press(press) + m_press(press), + m_events(events) { // do nothing } @@ -887,16 +887,16 @@ CInputFilter::CRule::getAction(bool onActivation, UInt32 index) const // Input Filter Class // ----------------------------------------------------------------------------- CInputFilter::CInputFilter(IEventQueue* events) : - m_events(events), - m_primaryClient(NULL) + m_primaryClient(NULL), + m_events(events) { // do nothing } CInputFilter::CInputFilter(const CInputFilter& x) : - m_events(x.m_events), m_ruleList(x.m_ruleList), - m_primaryClient(NULL) + m_primaryClient(NULL), + m_events(x.m_events) { setPrimaryClient(x.m_primaryClient); } diff --git a/src/lib/server/CPrimaryClient.cpp b/src/lib/server/CPrimaryClient.cpp index de07bb26..d886455b 100644 --- a/src/lib/server/CPrimaryClient.cpp +++ b/src/lib/server/CPrimaryClient.cpp @@ -28,8 +28,7 @@ CPrimaryClient::CPrimaryClient(const CString& name, CScreen* screen) : CBaseClientProxy(name), m_screen(screen), - m_fakeInputCount(0), - m_mock(false) + m_fakeInputCount(0) { // all clipboards are clean for (UInt32 i = 0; i < kClipboardEnd; ++i) { diff --git a/src/lib/server/CPrimaryClient.h b/src/lib/server/CPrimaryClient.h index 3983b476..88da582f 100644 --- a/src/lib/server/CPrimaryClient.h +++ b/src/lib/server/CPrimaryClient.h @@ -39,7 +39,7 @@ public: ~CPrimaryClient(); #ifdef TEST_ENV - CPrimaryClient() : CBaseClientProxy(""), m_mock(true) { } + CPrimaryClient() : CBaseClientProxy("") { } #endif //! @name manipulators @@ -151,7 +151,6 @@ private: CScreen* m_screen; bool m_clipboardDirty[kClipboardEnd]; SInt32 m_fakeInputCount; - bool m_mock; }; #endif diff --git a/src/lib/server/CServer.cpp b/src/lib/server/CServer.cpp index ab87fac9..07c04729 100644 --- a/src/lib/server/CServer.cpp +++ b/src/lib/server/CServer.cpp @@ -48,7 +48,6 @@ // CServer::CServer(CConfig& config, CPrimaryClient* primaryClient, CScreen* screen, IEventQueue* events, bool enableDragDrop) : - m_events(events), m_mock(false), m_primaryClient(primaryClient), m_active(primaryClient), @@ -75,6 +74,7 @@ CServer::CServer(CConfig& config, CPrimaryClient* primaryClient, CScreen* screen m_keyboardBroadcasting(false), m_lockedToScreen(false), m_screen(screen), + m_events(events), m_sendFileThread(NULL), m_writeToDropDirThread(NULL), m_ignoreFileTransfer(false), @@ -190,7 +190,6 @@ CServer::CServer(CConfig& config, CPrimaryClient* primaryClient, CScreen* screen m_inputFilter->setPrimaryClient(m_primaryClient); // Determine if scroll lock is already set. If so, lock the cursor to the primary screen - int keyValue = m_primaryClient->getToggleMask(); if (m_primaryClient->getToggleMask() & KeyModifierScrollLock) { LOG((CLOG_DEBUG "scroll lock on initially. locked to screen")); m_lockedToScreen = true; diff --git a/src/lib/synergy/CApp.cpp b/src/lib/synergy/CApp.cpp index 4ce07afc..f85eda58 100644 --- a/src/lib/synergy/CApp.cpp +++ b/src/lib/synergy/CApp.cpp @@ -52,14 +52,14 @@ CApp* CApp::s_instance = nullptr; CApp::CApp(IEventQueue* events, CreateTaskBarReceiverFunc createTaskBarReceiver, CArgsBase* args) : - m_events(events), - m_createTaskBarReceiver(createTaskBarReceiver), - m_args(args), m_bye(&exit), m_taskBarReceiver(NULL), m_suspended(false), - m_ipcClient(nullptr), - m_appUtil(events) + m_events(events), + m_args(args), + m_createTaskBarReceiver(createTaskBarReceiver), + m_appUtil(events), + m_ipcClient(nullptr) { assert(s_instance == nullptr); s_instance = this; @@ -289,7 +289,12 @@ CApp::run(int argc, char** argv) #if MAC_OS_X_VERSION_10_7 // dock hide only supported on lion :( ProcessSerialNumber psn = { 0, kCurrentProcess }; + +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" GetCurrentProcess(&psn); +#pragma GCC diagnostic pop + TransformProcessType(&psn, kProcessTransformToBackgroundApplication); #endif diff --git a/src/lib/synergy/CArgsBase.cpp b/src/lib/synergy/CArgsBase.cpp index 9362f250..2f8a1c87 100644 --- a/src/lib/synergy/CArgsBase.cpp +++ b/src/lib/synergy/CArgsBase.cpp @@ -33,11 +33,11 @@ m_disableXInitThreads(false), m_backend(false), m_restartable(true), m_noHooks(false), -m_disableTray(false), m_pname(NULL), m_logFilter(NULL), m_logFile(NULL), m_display(NULL), +m_disableTray(false), m_enableIpc(false), m_enableDragDrop(false) { diff --git a/src/lib/synergy/CClientTaskBarReceiver.cpp b/src/lib/synergy/CClientTaskBarReceiver.cpp index 4e36245b..71ad18e7 100644 --- a/src/lib/synergy/CClientTaskBarReceiver.cpp +++ b/src/lib/synergy/CClientTaskBarReceiver.cpp @@ -29,8 +29,8 @@ // CClientTaskBarReceiver::CClientTaskBarReceiver(IEventQueue* events) : - m_events(events), - m_state(kNotRunning) + m_state(kNotRunning), + m_events(events) { // do nothing } diff --git a/src/lib/synergy/CDaemonApp.cpp b/src/lib/synergy/CDaemonApp.cpp index 040683bb..1cef384a 100644 --- a/src/lib/synergy/CDaemonApp.cpp +++ b/src/lib/synergy/CDaemonApp.cpp @@ -78,12 +78,12 @@ winMainLoopStatic(int, const char**) #endif CDaemonApp::CDaemonApp() : - m_events(nullptr), m_ipcServer(nullptr), - m_ipcLogOutputter(nullptr) + m_ipcLogOutputter(nullptr), #if SYSAPI_WIN32 - ,m_watchdog(nullptr) + m_watchdog(nullptr), #endif + m_events(nullptr) { s_instance = this; } diff --git a/src/lib/synergy/CKeyMap.h b/src/lib/synergy/CKeyMap.h index b024602b..86705f4b 100644 --- a/src/lib/synergy/CKeyMap.h +++ b/src/lib/synergy/CKeyMap.h @@ -33,7 +33,7 @@ This class provides a keyboard mapping. class CKeyMap { public: CKeyMap(); - ~CKeyMap(); + virtual ~CKeyMap(); //! KeyID synthesis info /*! diff --git a/src/lib/synergy/CKeyState.cpp b/src/lib/synergy/CKeyState.cpp index b14f867f..a2b457d9 100644 --- a/src/lib/synergy/CKeyState.cpp +++ b/src/lib/synergy/CKeyState.cpp @@ -384,20 +384,20 @@ static const KeyID s_numpadTable[] = { CKeyState::CKeyState(IEventQueue* events) : IKeyState(events), - m_events(events), - m_mask(0), m_keyMapPtr(new CKeyMap()), - m_keyMap(*m_keyMapPtr) + m_keyMap(*m_keyMapPtr), + m_mask(0), + m_events(events) { init(); } CKeyState::CKeyState(IEventQueue* events, CKeyMap& keyMap) : IKeyState(events), - m_events(events), - m_mask(0), m_keyMapPtr(0), - m_keyMap(keyMap) + m_keyMap(keyMap), + m_mask(0), + m_events(events) { init(); } diff --git a/src/lib/synergy/CPacketStreamFilter.cpp b/src/lib/synergy/CPacketStreamFilter.cpp index 2672e20b..d29eeaa0 100644 --- a/src/lib/synergy/CPacketStreamFilter.cpp +++ b/src/lib/synergy/CPacketStreamFilter.cpp @@ -29,9 +29,9 @@ CPacketStreamFilter::CPacketStreamFilter(IEventQueue* events, synergy::IStream* stream, bool adoptStream) : CStreamFilter(events, stream, adoptStream), - m_events(events), m_size(0), - m_inputShutdown(false) + m_inputShutdown(false), + m_events(events) { // do nothing } diff --git a/src/lib/synergy/CPortableTaskBarReceiver.cpp b/src/lib/synergy/CPortableTaskBarReceiver.cpp index 9b2c7e54..f784057f 100644 --- a/src/lib/synergy/CPortableTaskBarReceiver.cpp +++ b/src/lib/synergy/CPortableTaskBarReceiver.cpp @@ -28,8 +28,8 @@ // CPortableTaskBarReceiver::CPortableTaskBarReceiver(IEventQueue* events) : - m_events(events), - m_state(kNotRunning) + m_state(kNotRunning), + m_events(events) { // do nothing } diff --git a/src/lib/synergy/CScreen.cpp b/src/lib/synergy/CScreen.cpp index 5a291bb5..6ed134eb 100644 --- a/src/lib/synergy/CScreen.cpp +++ b/src/lib/synergy/CScreen.cpp @@ -29,13 +29,13 @@ // CScreen::CScreen(IPlatformScreen* platformScreen, IEventQueue* events) : - m_events(events), m_screen(platformScreen), m_isPrimary(platformScreen->isPrimary()), m_enabled(false), m_entered(m_isPrimary), m_screenSaverSync(true), m_fakeInput(false), + m_events(events), m_mock(false), m_enableDragDrop(false) { diff --git a/src/lib/synergy/CServerApp.cpp b/src/lib/synergy/CServerApp.cpp index d8e59c6e..fcca0fbd 100644 --- a/src/lib/synergy/CServerApp.cpp +++ b/src/lib/synergy/CServerApp.cpp @@ -886,13 +886,6 @@ CServerApp::foregroundStartup(int argc, char** argv) return mainLoop(); } -static -int -mainLoopStatic() -{ - return CServerApp::instance().mainLoop(); -} - const char* CServerApp::daemonName() const { diff --git a/src/lib/synergy/CServerTaskBarReceiver.cpp b/src/lib/synergy/CServerTaskBarReceiver.cpp index 87e91415..69ce39ed 100644 --- a/src/lib/synergy/CServerTaskBarReceiver.cpp +++ b/src/lib/synergy/CServerTaskBarReceiver.cpp @@ -29,8 +29,8 @@ // CServerTaskBarReceiver::CServerTaskBarReceiver(IEventQueue* events) : - m_events(events), - m_state(kNotRunning) + m_state(kNotRunning), + m_events(events) { // do nothing } diff --git a/src/lib/synergy/IKeyState.cpp b/src/lib/synergy/IKeyState.cpp index c650c5b9..ae686aa9 100644 --- a/src/lib/synergy/IKeyState.cpp +++ b/src/lib/synergy/IKeyState.cpp @@ -25,8 +25,7 @@ // IKeyState // -IKeyState::IKeyState(IEventQueue* events) : - m_events(events) +IKeyState::IKeyState(IEventQueue* events) { } diff --git a/src/lib/synergy/IKeyState.h b/src/lib/synergy/IKeyState.h index 408befd9..34bca605 100644 --- a/src/lib/synergy/IKeyState.h +++ b/src/lib/synergy/IKeyState.h @@ -165,9 +165,6 @@ public: virtual void pollPressedKeys(KeyButtonSet& pressedKeys) const = 0; //@} - -private: - IEventQueue* m_events; }; #endif diff --git a/src/test/unittests/io/CMockStream.h b/src/test/unittests/io/CMockStream.h index 2de401d3..bf6986c9 100644 --- a/src/test/unittests/io/CMockStream.h +++ b/src/test/unittests/io/CMockStream.h @@ -26,7 +26,7 @@ class IEventQueue; class CMockStream : public synergy::IStream { public: - CMockStream() : synergy::IStream(NULL) { } + CMockStream() { } MOCK_METHOD0(close, void()); MOCK_METHOD2(read, UInt32(void*, UInt32)); MOCK_METHOD2(write, void(const void*, UInt32));