Gentoo Archives: gentoo-commits

From: "Jeremy Olexa (darkside)" <darkside@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in x11-misc/synergy/files: synergy-1.4.5-clipboard-fix.patch
Date: Thu, 12 Jan 2012 00:27:34
Message-Id: 20120112002724.6CF9D2001D@flycatcher.gentoo.org
1 darkside 12/01/12 00:27:24
2
3 Added: synergy-1.4.5-clipboard-fix.patch
4 Log:
5 Revbump to fix clipboard issue, bug 397549 by Patrick
6
7 (Portage version: 2.1.10.41/cvs/Linux i686)
8
9 Revision Changes Path
10 1.1 x11-misc/synergy/files/synergy-1.4.5-clipboard-fix.patch
11
12 file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-misc/synergy/files/synergy-1.4.5-clipboard-fix.patch?rev=1.1&view=markup
13 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/x11-misc/synergy/files/synergy-1.4.5-clipboard-fix.patch?rev=1.1&content-type=text/plain
14
15 Index: synergy-1.4.5-clipboard-fix.patch
16 ===================================================================
17 https://bugs.gentoo.org/show_bug.cgi?id=397549
18 http://synergy-foss.org/tracker/issues/3066
19
20 diff -urN synergy-1.4.5-Source.orig/src/lib/arch/CArch.cpp synergy-1.4.5-Source/src/lib/arch/CArch.cpp
21 --- synergy-1.4.5-Source.orig/src/lib/arch/CArch.cpp 2011-05-08 20:08:58.000000000 -0400
22 +++ synergy-1.4.5-Source/src/lib/arch/CArch.cpp 2012-01-03 16:31:35.201750077 -0500
23 @@ -130,6 +130,7 @@
24 m_log = new ARCH_LOG;
25 m_net = new ARCH_NETWORK;
26 m_sleep = new ARCH_SLEEP;
27 + initArchString();
28 m_string = new ARCH_STRING;
29 m_time = new ARCH_TIME;
30 m_console = new ARCH_CONSOLE;
31 diff -urN synergy-1.4.5-Source.orig/src/lib/arch/CArch.cpp.orig synergy-1.4.5-Source/src/lib/arch/CArch.cpp.orig
32 --- synergy-1.4.5-Source.orig/src/lib/arch/CArch.cpp.orig 1969-12-31 19:00:00.000000000 -0500
33 +++ synergy-1.4.5-Source/src/lib/arch/CArch.cpp.orig 2011-05-08 20:08:58.000000000 -0400
34 @@ -0,0 +1,681 @@
35 +/*
36 + * synergy -- mouse and keyboard sharing utility
37 + * Copyright (C) 2002 Chris Schoeneman, Nick Bolton, Sorin Sbarnea
38 + *
39 + * This package is free software; you can redistribute it and/or
40 + * modify it under the terms of the GNU General Public License
41 + * found in the file COPYING that should have accompanied this file.
42 + *
43 + * This package is distributed in the hope that it will be useful,
44 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
45 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
46 + * GNU General Public License for more details.
47 + *
48 + * You should have received a copy of the GNU General Public License
49 + * along with this program. If not, see <http://www.gnu.org/licenses/>.
50 + */
51 +
52 +#include "common.h"
53 +#include "CArch.h"
54 +#include "CLog.h"
55 +
56 +#undef ARCH_CONSOLE
57 +#undef ARCH_DAEMON
58 +#undef ARCH_FILE
59 +#undef ARCH_LOG
60 +#undef ARCH_MULTITHREAD
61 +#undef ARCH_NETWORK
62 +#undef ARCH_SLEEP
63 +#undef ARCH_STRING
64 +#undef ARCH_SYSTEM
65 +#undef ARCH_TASKBAR
66 +#undef ARCH_TIME
67 +
68 +// include appropriate architecture implementation
69 +#if SYSAPI_WIN32
70 +# include "CArchConsoleWindows.h"
71 +# include "CArchDaemonWindows.h"
72 +# include "CArchFileWindows.h"
73 +# include "CArchLogWindows.h"
74 +# include "CArchMiscWindows.h"
75 +# include "CArchMultithreadWindows.h"
76 +# include "CArchNetworkWinsock.h"
77 +# include "CArchSleepWindows.h"
78 +# include "CArchStringWindows.h"
79 +# include "CArchSystemWindows.h"
80 +# include "CArchTaskBarWindows.h"
81 +# include "CArchTimeWindows.h"
82 +# include "CArchAppUtilWindows.h"
83 +#elif SYSAPI_UNIX
84 +# include "CArchConsoleUnix.h"
85 +# include "CArchDaemonUnix.h"
86 +# include "CArchFileUnix.h"
87 +# include "CArchLogUnix.h"
88 +# if HAVE_PTHREAD
89 +# include "CArchMultithreadPosix.h"
90 +# endif
91 +# include "CArchNetworkBSD.h"
92 +# include "CArchSleepUnix.h"
93 +# include "CArchStringUnix.h"
94 +# include "CArchSystemUnix.h"
95 +# include "CArchTaskBarXWindows.h"
96 +# include "CArchTimeUnix.h"
97 +# include "CArchAppUtilUnix.h"
98 +#endif
99 +
100 +#if !defined(ARCH_CONSOLE)
101 +# error unsupported platform for console
102 +#endif
103 +
104 +#if !defined(ARCH_DAEMON)
105 +# error unsupported platform for daemon
106 +#endif
107 +
108 +#if !defined(ARCH_FILE)
109 +# error unsupported platform for file
110 +#endif
111 +
112 +#if !defined(ARCH_LOG)
113 +# error unsupported platform for logging
114 +#endif
115 +
116 +#if !defined(ARCH_MULTITHREAD)
117 +# error unsupported platform for multithreading
118 +#endif
119 +
120 +#if !defined(ARCH_NETWORK)
121 +# error unsupported platform for network
122 +#endif
123 +
124 +#if !defined(ARCH_SLEEP)
125 +# error unsupported platform for sleep
126 +#endif
127 +
128 +#if !defined(ARCH_STRING)
129 +# error unsupported platform for string
130 +#endif
131 +
132 +#if !defined(ARCH_SYSTEM)
133 +# error unsupported platform for system
134 +#endif
135 +
136 +#if !defined(ARCH_TASKBAR)
137 +# error unsupported platform for taskbar
138 +#endif
139 +
140 +#if !defined(ARCH_TIME)
141 +# error unsupported platform for time
142 +#endif
143 +
144 +#if !defined(ARCH_APPUTIL)
145 +# error unsupported platform for app util
146 +#endif
147 +
148 +//
149 +// CArch
150 +//
151 +
152 +CArch* CArch::s_instance = NULL;
153 +
154 +CArch::CArch()
155 +{
156 + // only once instance of CArch
157 + assert(s_instance == NULL);
158 + s_instance = this;
159 +
160 + // create architecture implementation objects
161 + m_mt = new ARCH_MULTITHREAD;
162 + m_system = new ARCH_SYSTEM;
163 + m_file = new ARCH_FILE;
164 + m_log = new ARCH_LOG;
165 + m_net = new ARCH_NETWORK;
166 + m_sleep = new ARCH_SLEEP;
167 + m_string = new ARCH_STRING;
168 + m_time = new ARCH_TIME;
169 + m_console = new ARCH_CONSOLE;
170 + m_daemon = new ARCH_DAEMON;
171 + m_taskbar = new ARCH_TASKBAR;
172 + m_appUtil = new ARCH_APPUTIL;
173 +
174 +#if SYSAPI_WIN32
175 + CArchMiscWindows::init();
176 +#endif
177 +}
178 +
179 +CArch::~CArch()
180 +{
181 + // clean up
182 + delete m_taskbar;
183 + delete m_daemon;
184 + delete m_console;
185 + delete m_time;
186 + delete m_string;
187 + delete m_sleep;
188 + delete m_net;
189 + delete m_log;
190 + delete m_file;
191 + delete m_system;
192 + delete m_mt;
193 + delete m_appUtil;
194 +
195 + // no instance
196 + s_instance = NULL;
197 +}
198 +
199 +CArch*
200 +CArch::getInstance()
201 +{
202 + assert(s_instance != NULL);
203 +
204 + return s_instance;
205 +}
206 +
207 +void
208 +CArch::openConsole(const char* title)
209 +{
210 + m_console->openConsole(title);
211 +}
212 +
213 +void
214 +CArch::closeConsole()
215 +{
216 + m_console->closeConsole();
217 +}
218 +
219 +void
220 +CArch::showConsole(bool showIfEmpty)
221 +{
222 + m_console->showConsole(showIfEmpty);
223 +}
224 +
225 +void
226 +CArch::writeConsole(ELevel level, const char* str)
227 +{
228 + m_console->writeConsole(level, str);
229 +}
230 +
231 +void
232 +CArch::installDaemon(const char* name,
233 + const char* description,
234 + const char* pathname,
235 + const char* commandLine,
236 + const char* dependencies,
237 + bool allUsers)
238 +{
239 + m_daemon->installDaemon(name, description, pathname,
240 + commandLine, dependencies, allUsers);
241 +}
242 +
243 +void
244 +CArch::uninstallDaemon(const char* name, bool allUsers)
245 +{
246 + m_daemon->uninstallDaemon(name, allUsers);
247 +}
248 +
249 +int
250 +CArch::daemonize(const char* name, DaemonFunc func)
251 +{
252 + return m_daemon->daemonize(name, func);
253 +}
254 +
255 +bool
256 +CArch::canInstallDaemon(const char* name, bool allUsers)
257 +{
258 + return m_daemon->canInstallDaemon(name, allUsers);
259 +}
260 +
261 +bool
262 +CArch::isDaemonInstalled(const char* name, bool allUsers)
263 +{
264 + return m_daemon->isDaemonInstalled(name, allUsers);
265 +}
266 +
267 +const char*
268 +CArch::getBasename(const char* pathname)
269 +{
270 + return m_file->getBasename(pathname);
271 +}
272 +
273 +std::string
274 +CArch::getUserDirectory()
275 +{
276 + return m_file->getUserDirectory();
277 +}
278 +
279 +std::string
280 +CArch::getSystemDirectory()
281 +{
282 + return m_file->getSystemDirectory();
283 +}
284 +
285 +std::string
286 +CArch::concatPath(const std::string& prefix, const std::string& suffix)
287 +{
288 + return m_file->concatPath(prefix, suffix);
289 +}
290 +
291 +void
292 +CArch::openLog(const char* name)
293 +{
294 + m_log->openLog(name);
295 +}
296 +
297 +void
298 +CArch::closeLog()
299 +{
300 + m_log->closeLog();
301 +}
302 +
303 +void
304 +CArch::showLog(bool showIfEmpty)
305 +{
306 + m_log->showLog(showIfEmpty);
307 +}
308 +
309 +void
310 +CArch::writeLog(ELevel level, const char* msg)
311 +{
312 + m_log->writeLog(level, msg);
313 +}
314 +
315 +CArchCond
316 +CArch::newCondVar()
317 +{
318 + return m_mt->newCondVar();
319 +}
320 +
321 +void
322 +CArch::closeCondVar(CArchCond cond)
323 +{
324 + m_mt->closeCondVar(cond);
325 +}
326 +
327 +void
328 +CArch::signalCondVar(CArchCond cond)
329 +{
330 + m_mt->signalCondVar(cond);
331 +}
332 +
333 +void
334 +CArch::broadcastCondVar(CArchCond cond)
335 +{
336 + m_mt->broadcastCondVar(cond);
337 +}
338 +
339 +bool
340 +CArch::waitCondVar(CArchCond cond, CArchMutex mutex, double timeout)
341 +{
342 + return m_mt->waitCondVar(cond, mutex, timeout);
343 +}
344 +
345 +CArchMutex
346 +CArch::newMutex()
347 +{
348 + return m_mt->newMutex();
349 +}
350 +
351 +void
352 +CArch::closeMutex(CArchMutex mutex)
353 +{
354 + m_mt->closeMutex(mutex);
355 +}
356 +
357 +void
358 +CArch::lockMutex(CArchMutex mutex)
359 +{
360 + m_mt->lockMutex(mutex);
361 +}
362 +
363 +void
364 +CArch::unlockMutex(CArchMutex mutex)
365 +{
366 + m_mt->unlockMutex(mutex);
367 +}
368 +
369 +CArchThread
370 +CArch::newThread(ThreadFunc func, void* data)
371 +{
372 + return m_mt->newThread(func, data);
373 +}
374 +
375 +CArchThread
376 +CArch::newCurrentThread()
377 +{
378 + return m_mt->newCurrentThread();
379 +}
380 +
381 +CArchThread
382 +CArch::copyThread(CArchThread thread)
383 +{
384 + return m_mt->copyThread(thread);
385 +}
386 +
387 +void
388 +CArch::closeThread(CArchThread thread)
389 +{
390 + m_mt->closeThread(thread);
391 +}
392 +
393 +void
394 +CArch::cancelThread(CArchThread thread)
395 +{
396 + m_mt->cancelThread(thread);
397 +}
398 +
399 +void
400 +CArch::setPriorityOfThread(CArchThread thread, int n)
401 +{
402 + m_mt->setPriorityOfThread(thread, n);
403 +}
404 +
405 +void
406 +CArch::testCancelThread()
407 +{
408 + m_mt->testCancelThread();
409 +}
410 +
411 +bool
412 +CArch::wait(CArchThread thread, double timeout)
413 +{
414 + return m_mt->wait(thread, timeout);
415 +}
416 +
417 +bool
418 +CArch::isSameThread(CArchThread thread1, CArchThread thread2)
419 +{
420 + return m_mt->isSameThread(thread1, thread2);
421 +}
422 +
423 +bool
424 +CArch::isExitedThread(CArchThread thread)
425 +{
426 + return m_mt->isExitedThread(thread);
427 +}
428 +
429 +void*
430 +CArch::getResultOfThread(CArchThread thread)
431 +{
432 + return m_mt->getResultOfThread(thread);
433 +}
434 +
435 +IArchMultithread::ThreadID
436 +CArch::getIDOfThread(CArchThread thread)
437 +{
438 + return m_mt->getIDOfThread(thread);
439 +}
440 +
441 +void
442 +CArch::setSignalHandler(ESignal signal, SignalFunc func, void* userData)
443 +{
444 + m_mt->setSignalHandler(signal, func, userData);
445 +}
446 +
447 +void
448 +CArch::raiseSignal(ESignal signal)
449 +{
450 + m_mt->raiseSignal(signal);
451 +}
452 +
453 +CArchSocket
454 +CArch::newSocket(EAddressFamily family, ESocketType type)
455 +{
456 + return m_net->newSocket(family, type);
457 +}
458 +
459 +CArchSocket
460 +CArch::copySocket(CArchSocket s)
461 +{
462 + return m_net->copySocket(s);
463 +}
464 +
465 +void
466 +CArch::closeSocket(CArchSocket s)
467 +{
468 + m_net->closeSocket(s);
469 +}
470 +
471 +void
472 +CArch::closeSocketForRead(CArchSocket s)
473 +{
474 + m_net->closeSocketForRead(s);
475 +}
476 +
477 +void
478 +CArch::closeSocketForWrite(CArchSocket s)
479 +{
480 + m_net->closeSocketForWrite(s);
481 +}
482 +
483 +void
484 +CArch::bindSocket(CArchSocket s, CArchNetAddress addr)
485 +{
486 + m_net->bindSocket(s, addr);
487 +}
488 +
489 +void
490 +CArch::listenOnSocket(CArchSocket s)
491 +{
492 + m_net->listenOnSocket(s);
493 +}
494 +
495 +CArchSocket
496 +CArch::acceptSocket(CArchSocket s, CArchNetAddress* addr)
497 +{
498 + return m_net->acceptSocket(s, addr);
499 +}
500 +
501 +bool
502 +CArch::connectSocket(CArchSocket s, CArchNetAddress name)
503 +{
504 + return m_net->connectSocket(s, name);
505 +}
506 +
507 +int
508 +CArch::pollSocket(CPollEntry pe[], int num, double timeout)
509 +{
510 + return m_net->pollSocket(pe, num, timeout);
511 +}
512 +
513 +void
514 +CArch::unblockPollSocket(CArchThread thread)
515 +{
516 + m_net->unblockPollSocket(thread);
517 +}
518 +
519 +size_t
520 +CArch::readSocket(CArchSocket s, void* buf, size_t len)
521 +{
522 + return m_net->readSocket(s, buf, len);
523 +}
524 +
525 +size_t
526 +CArch::writeSocket(CArchSocket s, const void* buf, size_t len)
527 +{
528 + return m_net->writeSocket(s, buf, len);
529 +}
530 +
531 +void
532 +CArch::throwErrorOnSocket(CArchSocket s)
533 +{
534 + m_net->throwErrorOnSocket(s);
535 +}
536 +
537 +bool
538 +CArch::setNoDelayOnSocket(CArchSocket s, bool noDelay)
539 +{
540 + return m_net->setNoDelayOnSocket(s, noDelay);
541 +}
542 +
543 +bool
544 +CArch::setReuseAddrOnSocket(CArchSocket s, bool reuse)
545 +{
546 + return m_net->setReuseAddrOnSocket(s, reuse);
547 +}
548 +
549 +std::string
550 +CArch::getHostName()
551 +{
552 + return m_net->getHostName();
553 +}
554 +
555 +CArchNetAddress
556 +CArch::newAnyAddr(EAddressFamily family)
557 +{
558 + return m_net->newAnyAddr(family);
559 +}
560 +
561 +CArchNetAddress
562 +CArch::copyAddr(CArchNetAddress addr)
563 +{
564 + return m_net->copyAddr(addr);
565 +}
566 +
567 +CArchNetAddress
568 +CArch::nameToAddr(const std::string& name)
569 +{
570 + return m_net->nameToAddr(name);
571 +}
572 +
573 +void
574 +CArch::closeAddr(CArchNetAddress addr)
575 +{
576 + m_net->closeAddr(addr);
577 +}
578 +
579 +std::string
580 +CArch::addrToName(CArchNetAddress addr)
581 +{
582 + return m_net->addrToName(addr);
583 +}
584 +
585 +std::string
586 +CArch::addrToString(CArchNetAddress addr)
587 +{
588 + return m_net->addrToString(addr);
589 +}
590 +
591 +IArchNetwork::EAddressFamily
592 +CArch::getAddrFamily(CArchNetAddress addr)
593 +{
594 + return m_net->getAddrFamily(addr);
595 +}
596 +
597 +void
598 +CArch::setAddrPort(CArchNetAddress addr, int port)
599 +{
600 + m_net->setAddrPort(addr, port);
601 +}
602 +
603 +int
604 +CArch::getAddrPort(CArchNetAddress addr)
605 +{
606 + return m_net->getAddrPort(addr);
607 +}
608 +
609 +bool
610 +CArch::isAnyAddr(CArchNetAddress addr)
611 +{
612 + return m_net->isAnyAddr(addr);
613 +}
614 +
615 +bool
616 +CArch::isEqualAddr(CArchNetAddress a, CArchNetAddress b)
617 +{
618 + return m_net->isEqualAddr(a, b);
619 +}
620 +
621 +void
622 +CArch::sleep(double timeout)
623 +{
624 + m_sleep->sleep(timeout);
625 +}
626 +
627 +int
628 +CArch::vsnprintf(char* str, int size, const char* fmt, va_list ap)
629 +{
630 + return m_string->vsnprintf(str, size, fmt, ap);
631 +}
632 +
633 +int
634 +CArch::convStringMBToWC(wchar_t* dst, const char* src, UInt32 n, bool* errors)
635 +{
636 + return m_string->convStringMBToWC(dst, src, n, errors);
637 +}
638 +
639 +int
640 +CArch::convStringWCToMB(char* dst, const wchar_t* src, UInt32 n, bool* errors)
641 +{
642 + return m_string->convStringWCToMB(dst, src, n, errors);
643 +}
644 +
645 +IArchString::EWideCharEncoding
646 +CArch::getWideCharEncoding()
647 +{
648 + return m_string->getWideCharEncoding();
649 +}
650 +
651 +std::string
652 +CArch::getOSName() const
653 +{
654 + return m_system->getOSName();
655 +}
656 +
657 +std::string
658 +CArch::getPlatformName() const
659 +{
660 + return m_system->getPlatformName();
661 +}
662 +
663 +void
664 +CArch::addReceiver(IArchTaskBarReceiver* receiver)
665 +{
666 + m_taskbar->addReceiver(receiver);
667 +}
668 +
669 +void
670 +CArch::removeReceiver(IArchTaskBarReceiver* receiver)
671 +{
672 + m_taskbar->removeReceiver(receiver);
673 +}
674 +
675 +void
676 +CArch::updateReceiver(IArchTaskBarReceiver* receiver)
677 +{
678 + m_taskbar->updateReceiver(receiver);
679 +}
680 +
681 +double
682 +CArch::time()
683 +{
684 + return m_time->time();
685 +}
686 +
687 +bool
688 +CArch::parseArg(const int& argc, const char* const* argv, int& i)
689 +{
690 + return m_appUtil->parseArg(argc, argv, i);
691 +}
692 +
693 +void
694 +CArch::adoptApp(CApp* app)
695 +{
696 + m_appUtil->adoptApp(app);
697 +}
698 +
699 +CApp&
700 +CArch::app() const
701 +{
702 + return m_appUtil->app();
703 +}
704 +
705 +int
706 +CArch::run(int argc, char** argv)
707 +{
708 + return m_appUtil->run(argc, argv);
709 +}
710 +
711 +void
712 +CArch::beforeAppExit()
713 +{
714 + m_appUtil->beforeAppExit();
715 +}
716 diff -urN synergy-1.4.5-Source.orig/src/lib/arch/IArchString.cpp synergy-1.4.5-Source/src/lib/arch/IArchString.cpp
717 --- synergy-1.4.5-Source.orig/src/lib/arch/IArchString.cpp 2011-10-10 20:57:37.000000000 -0400
718 +++ synergy-1.4.5-Source/src/lib/arch/IArchString.cpp 2012-01-03 16:31:35.201750077 -0500
719 @@ -36,6 +36,13 @@
720 }
721 }
722
723 +void
724 +IArchString::initArchString()
725 +{
726 + if (s_mutex == NULL)
727 + s_mutex = ARCH->newMutex();
728 +}
729 +
730 int
731 IArchString::convStringWCToMB(char* dst,
732 const wchar_t* src, UInt32 n, bool* errors)
733 diff -urN synergy-1.4.5-Source.orig/src/lib/arch/IArchString.h synergy-1.4.5-Source/src/lib/arch/IArchString.h
734 --- synergy-1.4.5-Source.orig/src/lib/arch/IArchString.h 2011-10-10 09:26:28.000000000 -0400
735 +++ synergy-1.4.5-Source/src/lib/arch/IArchString.h 2012-01-03 16:31:35.202750078 -0500
736 @@ -30,6 +30,7 @@
737 class IArchString : public IInterface {
738 public:
739 virtual ~IArchString();
740 + void initArchString();
741
742 //! Wide character encodings
743 /*!