New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 672477 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Dec 2016
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug
Proj-VR
Proj-XR
Proj-XR-VR



Sign in to add a comment

StrictMode violation when create NonPresentingNativeContext

Project Member Reported by bshe@chromium.org, Dec 8 2016

Issue description

example stack is:
12-08 09:06:09.990 12018 12027 E StrictMode: A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks.
12-08 09:06:09.990 12018 12027 E StrictMode: java.lang.Throwable: Explicit termination method 'close' not called
12-08 09:06:09.990 12018 12027 E StrictMode:    at dalvik.system.CloseGuard.open(CloseGuard.java:180)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.database.CursorWindow.<init>(CursorWindow.java:141)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.database.CursorWindow.<init>(CursorWindow.java)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.database.CursorWindow$1.createFromParcel(CursorWindow.java:685)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.database.CursorWindow$1.createFromParcel(CursorWindow.java:684)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.database.CursorWindow.newFromParcel(CursorWindow.java:694)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.database.BulkCursorProxy.getWindow(BulkCursorNative.java:168)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.database.BulkCursorToCursorAdaptor.onMove(BulkCursorToCursorAdaptor.java:82)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.database.AbstractCursor.moveToPosition(AbstractCursor.java:236)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.database.AbstractCursor.moveToFirst(AbstractCursor.java:258)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.database.CursorWrapper.moveToFirst(CursorWrapper.java:71)
12-08 09:06:09.990 12018 12027 E StrictMode:    at com.google.vr.cardboard.ContentProviderVrParamsProvider.readParams(PG:115)
12-08 09:06:09.990 12018 12027 E StrictMode:    at com.google.vr.cardboard.ContentProviderVrParamsProvider.readDeviceParams(PG:69)
12-08 09:06:09.990 12018 12027 E StrictMode:    at com.google.vr.cardboard.VrParamsProviderJni.readDeviceParams(PG:68)
12-08 09:06:09.990 12018 12027 E StrictMode:    at com.google.vr.ndk.base.GvrApi.nativeCreate(Native Method)
12-08 09:06:09.990 12018 12027 E StrictMode:    at com.google.vr.ndk.base.GvrApi.<init>(SourceFile:149)
12-08 09:06:09.990 12018 12027 E StrictMode:    at com.google.vr.ndk.base.GvrLayout.init(SourceFile:277)
12-08 09:06:09.990 12018 12027 E StrictMode:    at com.google.vr.ndk.base.GvrLayout.<init>(SourceFile:230)
12-08 09:06:09.990 12018 12027 E StrictMode:    at org.chromium.chrome.browser.vr_shell.NonPresentingGvrContextImpl.<init>(NonPresentingGvrContextImpl.java:22)
12-08 09:06:09.990 12018 12027 E StrictMode:    at org.chromium.chrome.browser.vr_shell.VrClassesBuilderImpl.createNonPresentingGvrContext(VrClassesBuilderImpl.java:26)
12-08 09:06:09.990 12018 12027 E StrictMode:    at org.chromium.chrome.browser.vr_shell.VrShellDelegate.createNonPresentingNativeContext(VrShellDelegate.java:411)
12-08 09:06:09.990 12018 12027 E StrictMode:    at org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method)
12-08 09:06:09.990 12018 12027 E StrictMode:    at org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:41)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.os.Handler.dispatchMessage(Handler.java:102)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.os.Looper.loop(Looper.java:154)
12-08 09:06:09.990 12018 12027 E StrictMode:    at android.app.ActivityThread.main(ActivityThread.java:6119)
12-08 09:06:09.990 12018 12027 E StrictMode:    at java.lang.reflect.Method.invoke(Native Method)
12-08 09:06:09.990 12018 12027 E StrictMode:    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)
12-08 09:06:09.990 12018 12027 E StrictMode:    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

 

Comment 1 by bshe@chromium.org, Dec 8 2016

hmm. Looks like there are two kinds of StrictMode violation.
The other is disk read violation which due to GVR moved API initialization in Gvr ctor.

The stack looks something like this:
12-07 13:36:13.737 16027 16027 D StrictMode: StrictMode policy violation; ~duration=100 ms: android.os.StrictMode$StrictModeDiskReadViolation: policy=1638431 violation=2
12-07 13:36:13.737 16027 16027 D StrictMode:    at android.os.StrictMode$AndroidBlockGuardPolicy.onReadFromDisk(StrictMode.java:1263)
12-07 13:36:13.737 16027 16027 D StrictMode:    at libcore.io.BlockGuardOs.lseek(BlockGuardOs.java:162)
12-07 13:36:13.737 16027 16027 D StrictMode:    at java.io.RandomAccessFile.seek(RandomAccessFile.java:603)
12-07 13:36:13.737 16027 16027 D StrictMode:    at java.util.zip.Zip64.parseZip64EocdRecordLocator(Zip64.java:98)
12-07 13:36:13.737 16027 16027 D StrictMode:    at java.util.zip.ZipFile.readCentralDir(ZipFile.java:419)
12-07 13:36:13.737 16027 16027 D StrictMode:    at java.util.zip.ZipFile.<init>(ZipFile.java:175)
12-07 13:36:13.737 16027 16027 D StrictMode:    at java.util.zip.ZipFile.<init>(ZipFile.java:131)
12-07 13:36:13.737 16027 16027 D StrictMode:    at dalvik.system.DexPathList$Element.maybeInit(DexPathList.java:452)
12-07 13:36:13.737 16027 16027 D StrictMode:    at dalvik.system.DexPathList$Element.findNativeLibrary(DexPathList.java:481)
12-07 13:36:13.737 16027 16027 D StrictMode:    at dalvik.system.DexPathList.findLibrary(DexPathList.java:400)
12-07 13:36:13.737 16027 16027 D StrictMode:    at dalvik.system.BaseDexClassLoader.findLibrary(BaseDexClassLoader.java:77)
12-07 13:36:13.737 16027 16027 D StrictMode:    at java.lang.Runtime.loadLibrary(Runtime.java:361)
12-07 13:36:13.737 16027 16027 D StrictMode:    at java.lang.System.loadLibrary(System.java:1076)
12-07 13:36:13.737 16027 16027 D StrictMode:    at com.google.vr.ndk.base.GvrApi.<clinit>(SourceFile:104)
12-07 13:36:13.737 16027 16027 D StrictMode:    at com.google.vr.ndk.base.GvrLayout.init(SourceFile:276)
12-07 13:36:13.737 16027 16027 D StrictMode:    at com.google.vr.ndk.base.GvrLayout.<init>(SourceFile:230)
12-07 13:36:13.737 16027 16027 D StrictMode:    at org.chromium.chrome.browser.vr_shell.NonPresentingGvrContextImpl.<init>(NonPresentingGvrContextImpl.java:22)
12-07 13:36:13.737 16027 16027 D StrictMode:    at org.chromium.chrome.browser.vr_shell.VrClassesBuilderImpl.createNonPresentingGvrContext(VrClassesBuilderImpl.java:26)
12-07 13:36:13.737 16027 16027 D StrictMode:    at org.chromium.chrome.browser.vr_shell.VrShellDelegate.createNonPresentingNativeContext(VrShellDelegate.java:435)
12-07 13:36:13.737 16027 16027 D StrictMode:    at org.chromium.base.SystemMessageHandler.nativeDoRunLoopOnce(Native Method)
12-07 13:36:13.737 16027 16027 D StrictMode:    at org.chromium.base.SystemMessageHandler.handleMessage(SystemMessageHandler.java:41)
12-07 13:36:13.737 16027 16027 D StrictMode:    at android.os.Handler.dispatchMessage(Handler.java:102)
12-07 13:36:13.737 16027 16027 D StrictMode:    at android.os.Looper.loop(Looper.java:148)
12-07 13:36:13.737 16027 16027 D StrictMode:    at android.app.ActivityThread.main(ActivityThread.java:5422)
12-07 13:36:13.737 16027 16027 D StrictMode:    at java.lang.reflect.Method.invoke(Native Method)
12-07 13:36:13.737 16027 16027 D StrictMode:    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
12-07 13:36:13.737 16027 16027 D StrictMode:    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)

Comment 3 by bshe@chromium.org, Dec 12 2016

Status: Fixed (was: Started)
So strict mode violation mentioned in #0 is because of VrCore. Somehow VrCore's version of ContentProviderVrParamsProvider is invoked. Update VrCore to a new version fixed the Strict mode violation. So mark this as fixed. 
Labels: Proj-VR-Daydream

Sign in to add a comment