aboutsummaryrefslogtreecommitdiffstats
path: root/iolooper-select.c
Commit message (Collapse)AuthorAgeFilesLines
* Fixes a hack that was enabling multi-touch emulation on Mac.Vladimir Chtchetkine2012-03-161-0/+2
| | | | | | | | The issue was that on Mac there is a bug in select() implementation, that caused select() to fail with EINVAL on condition that timeout exceeds 100000000 secods. So the real fix was to clamp timout value to that limit when select() is called on Mac. Change-Id: Icb9ead00a0060028957af1e6e22911d5e8e231c6
* Fix generic looper implementationDavid 'Digit' Turner2010-11-191-5/+11
| | | | | | | | | | | | | | | + allow looper_run() to return a value that indicates why it exited. + add looper_runWithDeadline() and looper_runWithTimeout() in the case where you want to run only for a limited time. looper_runWithTimeout(looper,0) can be used to poll the event state and return asap after firing all the callbacks. + fix iolooper_modify() Change-Id: Iba3b0385a7fd8d90f4f3334ebf313e79267f7b3d
* Implementation of event loop abstraction.David 'Digit' Turner2010-11-181-0/+23
| | | | | | | | | | | | | | | This patch adds "android/looper.h" which provides an abstraction for event loops: - android/looper-qemu.c implements it on top of the QEMU main event loop. - android/looper-generic.c implements it on top of an IoLooper object. The main idea is to move the UI-related code to use the abstraction to handle timers and asynchronous (network) i/o. NOTE: Code compiles but has not been heavily tested. Change-Id: Ib6820c1b9a9950dc22449a332bc1b066a07af203
* Fix build breakVladimir Chtchetkine2010-11-161-0/+1
| | | | Change-Id: I5b7e0c0b09e97cbdc80636c4a55177a82ac5936b
* Implement absoule wait in iolooperVladimir Chtchetkine2010-11-161-0/+19
| | | | Change-Id: I514ffe11bcdac2fe3c6b44998892d9a604b9966f
* Implement -list-cores UI optionVladimir Chtchetkine2010-11-101-3/+3
| | | | | | | Also fixed a bug in iolooper-select.c (io_looper_del_write was buggy) Also switched iolooper-select.c to use malloc/free instead of qemu_xxx Change-Id: Ief47608f30a863d624af6363620e93e903cbdadc
* Better detection of incorrect proxy values when starting the emulator.David 'Digit' Turner2010-07-301-1/+10
| | | | Change-Id: I344f06fc16e051359669b8fe9b8dcec0ceca377d
* Fixed infinite loop in qemu_aio_wait() affecting savevm.Ot ten Thije2010-07-281-0/+6
| | | | | | | Solved by porting a check on AIO operations from QEMU mainline (in mainline commit a76bab4952a1539266490295fb50b78802c467c2). Change-Id: I1d2011776f7cb90d81e36a5cf9381ef956d9a5b9
* Merge upstream QEMU 10.0.50 into the Android source tree.David 'Digit' Turner2009-09-141-0/+176
This change integrates many changes from the upstream QEMU sources. Its main purpose is to enable correct ARMv6 and ARMv7 support to the Android emulator. Due to the nature of the upstream code base, this unfortunately also required changes to many other parts of the source. Note that to ensure easier integrations in the future, some source files and directories that have heavy Android-specific customization have been renamed with an -android suffix. The original files are still there for easier integration tracking, but *never* compiled. For example: net.c net-android.c qemu-char.c qemu-char-android.c slirp/ slirp-android/ etc... Tested on linux-x86, darwin-x86 and windows host machines.