X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=nativebridge%2Fbin%2Fenable_nativebridge;h=c8899c6b9eba9dad29487918894047eb0bf971fb;hb=6dfd642467c2b30544754180c82432ae86b00145;hp=609ecdbb6df4697a9c883705e95d2e218e5100c4;hpb=5a68988a2848285ec50dbf94007964088a607e45;p=android-x86%2Fdevice-generic-common.git diff --git a/nativebridge/bin/enable_nativebridge b/nativebridge/bin/enable_nativebridge index 609ecdb..c8899c6 100644 --- a/nativebridge/bin/enable_nativebridge +++ b/nativebridge/bin/enable_nativebridge @@ -13,6 +13,11 @@ urls[3]=http://goo.gl/96BPKe urls[4]=http://goo.gl/v6c4Co urls[5]=http://goo.gl/CtKjxx +mount_sfs() +{ + mount -o 'context="u:object_r:system_file:s0"' $1 $2 +} + if [ -z "$1" ]; then v=8_y u=1 @@ -24,22 +29,23 @@ fi if [ -s /system/lib$1/libhoudini.so ]; then log -pi -thoudini "found /system/lib$1/libhoudini.so" elif [ -e /system/etc/houdini$v.sfs ]; then - mount /system/etc/houdini$v.sfs $dest_dir + mount_sfs /system/etc/houdini$v.sfs $dest_dir else if mountpoint -q $dest_dir; then kill -9 `fuser -m $dest_dir` umount -f $dest_dir fi - mkdir -p /data/arm - cd /data/arm - while ! mount houdini$v.sfs $dest_dir; do + if [ ! -d /data/media/0/arm ]; then + mkdir -p /data/media/0/arm + chown 1023.1023 /data/media/0/arm + fi + cd /data/media/0/arm + [ -s /data/arm/houdini$v.sfs ] && mv /data/arm/houdini$v.sfs . + while ! mount_sfs houdini$v.sfs $dest_dir; do while [ "$(getprop net.dns1)" = "" ]; do sleep 10 done - wget ${urls[$u%6]} -cO houdini$v.sfs && continue - rm -f houdini$v.sfs - sleep 30 - let u+=3 + [ -s houdini$v.sfs ] && sleep 10 || sleep 30 done fi