[TIMOB-16074] CLI: Genymotion library causes crash when scanning for Virtual Box in restricted folders
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | Medium |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2014-02-28T23:38:51.000+0000 |
Affected Version/s | Release 3.2.0 |
Fix Version/s | 2014 Sprint 04, 2014 Sprint 04 Core, Release 3.2.3, Release 3.3.0 |
Components | Android, CLI |
Labels | qe-testadded |
Reporter | Chris Barber |
Assignee | Chris Barber |
Created | 2013-12-23T20:01:26.000+0000 |
Updated | 2014-06-10T16:07:24.000+0000 |
Description
There is a bug in the Genymotion library that causes an error when it tries to scan for Virtual Box and encounters a restricted directory.
C:\Users\manuel.conde\AppData\Roaming\npm\node_modules\titanium\node_modules\longjohn\dist\longjohn.js:184
throw e;
^
Error: EPERM, operation not permitted 'C:\Program Files\Archivos comunes'
at fs.readdirSync (fs.js:654:18)
at scan (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\titanium-sdk\lib\emulators\genymotion.js:138:25)
at scan (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\titanium-sdk\lib\emulators\genymotion.js:150:26)
at C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\titanium-sdk\lib\emulators\genymotion.js:156:10
at C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\titanium-sdk\lib\emulators\genymotion.js:113:8
at q.process (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\async\lib\async.js:728:21)
at processImmediate (timers.js:330:15)
---------------------------------------------
at C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\async\lib\async.js:693:21
at Array.forEach (native)
at _each (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\async\lib\async.js:32:24)
at _insert (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\async\lib\async.js:678:11)
at q.push (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\async\lib\async.js:705:15)
at C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\titanium-sdk\lib\emulators\genymotion.js:129:12
at queue.drain (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\node-appc\lib\subprocess.js:108:3)
at next (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\async\lib\async.js:723:31)
---------------------------------------------
at C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\async\lib\async.js:693:21
at Array.forEach (native)
at _each (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\async\lib\async.js:32:24)
at _insert (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\async\lib\async.js:678:11)
at q.push (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\async\lib\async.js:705:15)
at Object.findExecutable (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\node-appc\lib\subprocess.js:113:8)
at async.parallel.virtualbox (C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\titanium-sdk\lib\emulators\genymotion.js:99:20)
at C:\Users\manuel.conde\AppData\Roaming\Titanium\mobilesdk\win32\3.2.0.GA\node_modules\async\lib\async.js:521:25
Here's the original Q&A question: http://developer.appcelerator.com/question/160759/update-to-ti-320ga-android-not-compiling-anymore
Master pull request: https://github.com/appcelerator/titanium_mobile/pull/5302 3.2.x pull request: https://github.com/appcelerator/titanium_mobile/pull/5303 Probably best to test this on Windows. To test: 1. Install Genymotion 2. Create an Android project 3. Create folder named "Genymobile" in C:\Program Files 4. Set permissions on that folder to Administrator only 5. Run an emulator build (for any kind of emulator) 6. The emulator should launch and the app should run
Observe that my main problem was that I had Genymotion installed, but I uninstalled it because was not working on my machine. But CLI was still calling the genymotion.js script. Just removing it from the folder, all began to work as expected.
Verified fixed on: Windows 8.1 Appcelerator Studio, build:3.2.3.201403250634 Titanium SDK, build: 3.2.3.v20140324164913 CLI: 3.2.3-dev Alloy: 1.3.1 Following Chris' test steps I successfully managed to launch the genymotion emulator. Closing.