Its purpose is to contact the 'boot-properties' service during the
boot process and to set the list of system properties read from the
emulator program through it.
It must be launched from /system/etc/init.goldfish.rc as root.
It depends on the 'boot-properties' service being implemented by the
emulator (in a later patch). If not available, it will simply timeout.
This also fixes a potential crash in qemud which can happen in the following case:
- client sends a command to a service
- the service responds with one or more message
- the service immediately closes the connection before the client can read the data
what happened is that the FDHandler object was buffering out-going packets to the
client, but the Multiplexer acted on the disconnection immediately. This resulted
in:
- client_free() being called
- fdhandler_shutdown() being called
- the FDHandler being placed on the 'closing' list to be able to send
buffered packets later. And 'receiver_close' being called
- client_fd_close() being called, which would call client_free()
recursively
- the second client_free() call would free the object
- the first client_free() call would try to free the object again
- ==> dlmalloc() detects a double-free and immediately aborts.
the fixes simply avoids the calle to receiver_close() in fdhandler_shutdown()
since this function is called from an explicit shutdown request from the multiplexer,
it doesn't correspond to the case where the client has closed the connection itself.
Merge commit '8c093d5d2a6695cda888827a506633da922ad543'
* commit '8c093d5d2a6695cda888827a506633da922ad543':
This fixes the build to always define the ANDROID macro, and remove an empty -I from the compiler options.
Merge commit 'ceada119d3676a936988cb4b35f75ebf2c28b8ee'
* commit 'ceada119d3676a936988cb4b35f75ebf2c28b8ee':
Sensors: Use a native_handle for the data channel instead of a single file descriptor.
Merge commit 'dc10c2e5a388f22fd0e061521dac61b6751b23f4'
* commit 'dc10c2e5a388f22fd0e061521dac61b6751b23f4':
Update 'android update adb' to the new file format for 3rd USB Vendor IDs.
Merge commit '0db48f76fb99cdc9d0ac1fafd41f82e51996de06'
* commit '0db48f76fb99cdc9d0ac1fafd41f82e51996de06':
Make 'android update adb' write the USB vendor IDs in hexa.
Merge commit '906e6529fce5e5c4473d9bcdb05c03b13dac2b8f'
* commit '906e6529fce5e5c4473d9bcdb05c03b13dac2b8f':
SDK Updater: some refactoring and some new features.
Merge commit 'c35157377ba06eeef32bc6eaf582fd6e4c9805a8'
* commit 'c35157377ba06eeef32bc6eaf582fd6e4c9805a8':
Moved updateAdb into SdkManager and updated with new adb_usb.ini format.
The refactoring part involves moving as much as possible stuff
in SdkLib/internal/repository.
The UI has moved in SdkUiLib/internal/repository except a specific
public wrapper for calling the Sdk Updater window.
There are also a bunch of new classes to handle the internal
structures: Package is the base type and to match the XML element
names we have PlatformPackage, AddonPackage, DocPackage and
ToolPackage.
All headers have been fixed.
Merge commit '96882a3406371e79ca90640e5889c91af50ea4d2'
* commit '96882a3406371e79ca90640e5889c91af50ea4d2':
AI 149189: Adding dalvik porting guide based on content from the Android source tree under dalvik/docs/porting.html
Merge commit '97752d4f80740485ec7a248a0f80074fa6a784db'
* commit '97752d4f80740485ec7a248a0f80074fa6a784db':
Add a timeout flag to runtest for running native tests on devices.
This eliminates the requirement that all sensors share a single file descriptor.
This, along with concurrent changes in other projects, fixes bugs b/1614524 and b/1614481
Signed-off-by: Mike Lockwood <lockwood@android.com>
Merge commit '838143199e2270e3f103050c76cf24539ad8dfe1' into donut
* commit '838143199e2270e3f103050c76cf24539ad8dfe1':
AI 149189: Adding dalvik porting guide based on content from the Android source tree under dalvik/docs/porting.html
Merge commit '1a0b3ffd5e1d5c2c155a2d8bcdf9a7d3402fc148'
* commit '1a0b3ffd5e1d5c2c155a2d8bcdf9a7d3402fc148':
Update doc with a better way to ignore windows problematic files.
Merge commit 'fc05fb2556215201e793a2ff7545c4e7d55f0a4f'
* commit 'fc05fb2556215201e793a2ff7545c4e7d55f0a4f':
Replaced occurences of "porting guide" with platform development kit
Merge commit '38ea38278923db2823f159df7d53e7964466bc2e'
* commit '38ea38278923db2823f159df7d53e7964466bc2e':
Add support for USB Vendor ID in the add-ons.
Merge commit '1f4a1dcb5f9cfe65a98be2fcb21cd5df4c6a3a9e'
* commit '1f4a1dcb5f9cfe65a98be2fcb21cd5df4c6a3a9e':
SDK #1800921: Packages the Windows SDK in a temporary location.
This changes make_windows_sdk so that it packages everything
in a temp dir. Once the build & packaging succeeds, the final
Zip is copied to the desired location.
The temp dir is *not* cleared on zip errors, which helps in
diagnosing packaging issues after the fact.
This has no impact on the build process itself (i.e. make
adb, emulator, etc.) which all happen in $SDK/out anyway.
The temp dir can be passed as an argument. If not provided,
the default Cygwin $TMP is used. Otherwise /tmp is used.
I also added an usage description when parameters are missing.
The add-on manifest can now declare a USB vendor ID with the line
usb-vendor=<id>
The ID must be a 16 hexadecimal value in the format 0xABCD.
The 'android' tool now has a new command 'android upate abd' that will create
a file called 'adb_usb.ini' in ~/.android/
This file will be read by adb to add support to those new vendor IDs.