[ { "line": "22", "type": "ACTIVITY_LEAK", "procedure": "void ActivityLeaks.directLeak()", "file": "codetoanalyze/java/infer/ActivityLeaks.java" }, { "line": "41", "type": "ACTIVITY_LEAK", "procedure": "void ActivityLeaks.indirectLeak()", "file": "codetoanalyze/java/infer/ActivityLeaks.java" }, { "type": "ACTIVITY_LEAK", "procedure": "void ActivityLeaks.nonStaticInnerClassLeak()", "file": "codetoanalyze/java/infer/ActivityLeaks.java" }, { "type": "ACTIVITY_LEAK", "procedure": "void ActivityLeaks.leakAfterInstanceFieldWrite()", "file": "codetoanalyze/java/infer/ActivityLeaks.java" }, { "type": "ACTIVITY_LEAK", "procedure": "ActivityLeaks$Singleton ActivityLeaks.singletonLeak()", "file": "codetoanalyze/java/infer/ActivityLeaks.java" }, { "type": "ACTIVITY_LEAK", "procedure": "void ActivityLeaks.handlerLeak()", "file": "codetoanalyze/java/infer/ActivityLeaks.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void AnalysisStops.fieldReadInCalleeMayCauseFalseNegative()", "file": "codetoanalyze/java/infer/AnalysisStops.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void AnalysisStops.fieldReadInCalleeWithAngelicObjFieldMayCauseFalseNegative()", "file": "codetoanalyze/java/infer/AnalysisStops.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void AnalysisStops.skipFunctionInLoopMayCauseFalseNegative()", "file": "codetoanalyze/java/infer/AnalysisStops.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void AutoGenerated.npe()", "file": "codetoanalyze/java/infer/AutoGenerated.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void Builtins.doNotBlockError(Object)", "file": "codetoanalyze/java/infer/Builtins.java" }, { "type": "RESOURCE_LEAK", "procedure": "void CloseableAsResourceExample.notClosingCloseable()", "file": "codetoanalyze/java/infer/CloseableAsResourceExample.java" }, { "type": "RESOURCE_LEAK", "procedure": "void CloseableAsResourceExample.withException()", "file": "codetoanalyze/java/infer/CloseableAsResourceExample.java" }, { "type": "RESOURCE_LEAK", "procedure": "void CloseableAsResourceExample.notClosingWrapper()", "file": "codetoanalyze/java/infer/CloseableAsResourceExample.java" }, { "type": "RESOURCE_LEAK", "procedure": "void CloseableAsResourceExample.failToCloseWithCloseQuietly()", "file": "codetoanalyze/java/infer/CloseableAsResourceExample.java" }, { "type": "RESOURCE_LEAK", "procedure": "T CloseableAsResourceExample.sourceOfNullWithResourceLeak()", "file": "codetoanalyze/java/infer/CloseableAsResourceExample.java" }, { "type": "RESOURCE_LEAK", "procedure": "int CursorLeaks.cursorNotClosed(SQLiteDatabase)", "file": "codetoanalyze/java/infer/CursorLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "int CursorLeaks.getImageCountHelperNotClosed(String)", "file": "codetoanalyze/java/infer/CursorLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "int CursorLeaks.getBucketCountNotClosed()", "file": "codetoanalyze/java/infer/CursorLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void CursorLeaks.queryUVMLegacyDbNotClosed()", "file": "codetoanalyze/java/infer/CursorLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "int CursorLeaks.completeDownloadNotClosed(DownloadManager)", "file": "codetoanalyze/java/infer/CursorLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void CursorLeaks.loadPrefsFromContentProviderNotClosed()", "file": "codetoanalyze/java/infer/CursorLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterInputStreamLeaks.bufferedInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/FilterInputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterInputStreamLeaks.checkedInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/FilterInputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterInputStreamLeaks.cipherInputStreamNotClosedAfterSkip()", "file": "codetoanalyze/java/infer/FilterInputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterInputStreamLeaks.dataInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/FilterInputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterInputStreamLeaks.deflaterInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/FilterInputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterInputStreamLeaks.gzipInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/FilterInputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterInputStreamLeaks.gzipInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/FilterInputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterInputStreamLeaks.digestInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/FilterInputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterInputStreamLeaks.inflaterInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/FilterInputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterInputStreamLeaks.pushbackInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/FilterInputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterOutputStreamLeaks.filterOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/FilterOutputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterOutputStreamLeaks.dataOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/FilterOutputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterOutputStreamLeaks.bufferedOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/FilterOutputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterOutputStreamLeaks.checkedOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/FilterOutputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterOutputStreamLeaks.cipherOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/FilterOutputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterOutputStreamLeaks.deflaterOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/FilterOutputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterOutputStreamLeaks.digestOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/FilterOutputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterOutputStreamLeaks.inflaterOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/FilterOutputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterOutputStreamLeaks.gzipOutputStreamNotClosedAfterFlush()", "file": "codetoanalyze/java/infer/FilterOutputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterOutputStreamLeaks.gzipOutputStreamNotClosedAfterFlush()", "file": "codetoanalyze/java/infer/FilterOutputStreamLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void FilterOutputStreamLeaks.printStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/FilterOutputStreamLeaks.java" }, { "type": "NULL_DEREFERENCE", "procedure": "int HashMapExample.getOneIntegerWithoutCheck()", "file": "codetoanalyze/java/infer/HashMapExample.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void HashMapExample.getTwoIntegersWithOneCheck(Integer,Integer)", "file": "codetoanalyze/java/infer/HashMapExample.java" }, { "line": "42", "type": "NULL_DEREFERENCE", "procedure": "int NullPointerExceptions.nullPointerException()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "line": "64", "type": "NULL_DEREFERENCE", "procedure": "int NullPointerExceptions.nullPointerExceptionInterProc()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "int NullPointerExceptions.nullPointerExceptionWithExceptionHandling(boolean)", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.nullPointerExceptionWithNullObjectParameter()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.nullPointerExceptionWithNullArrayParameter()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.nullPointerExceptionFromFaillingResourceConstructor()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.nullPointerExceptionFromFailingFileOutputStreamConstructor()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.nullPointerExceptionUnlessFrameFails()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "String NullPointerExceptions.hashmapNPE(HashMap,Object)", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "int NullPointerExceptions.NPEvalueOfFromHashmapBad(HashMap,int)", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.nullPointerExceptionInArrayLengthLoop(java.lang.Object[])", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.cursorFromContentResolverNPE(String)", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.nullPointerExceptionCallArrayReadMethod()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.sinkWithNeverNullSource()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.otherSinkWithNeverNullSource()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.nullableFieldNPE()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.nullableParamNPE(Object)", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.badCheckShouldCauseNPE()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.nullPointerExceptionArrayLength()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions$$$Class$Name$With$Dollars.npeWithDollars()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.someNPEAfterResourceLeak()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.derefNullableGetter()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "String NullPointerExceptions.testSystemGetPropertyArgument()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.testSystemGetPropertyReturn()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "NULL_DEREFERENCE", "procedure": "void NullPointerExceptions.derefNull()", "file": "codetoanalyze/java/infer/NullPointerExceptions.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ReaderLeaks.readerNotClosedAfterRead()", "file": "codetoanalyze/java/infer/ReaderLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ReaderLeaks.bufferedReaderNotClosedAfterRead()", "file": "codetoanalyze/java/infer/ReaderLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ReaderLeaks.inputStreamReaderNotClosedAfterRead()", "file": "codetoanalyze/java/infer/ReaderLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ReaderLeaks.fileReaderNotClosedAfterRead()", "file": "codetoanalyze/java/infer/ReaderLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ReaderLeaks.pushbackReaderNotClosedAfterRead()", "file": "codetoanalyze/java/infer/ReaderLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ReaderLeaks.pipedReaderNotClosedAfterConstructedWithWriter()", "file": "codetoanalyze/java/infer/ReaderLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ReaderLeaks.pipedReaderNotClosedAfterConnect(PipedWriter)", "file": "codetoanalyze/java/infer/ReaderLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ReaderLeaks.pipedReaderFalsePositive()", "file": "codetoanalyze/java/infer/ReaderLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.fileOutputStreamNotClosed()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.fileOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "int ResourceLeaks.fileOutputStreamTwoLeaks(boolean)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "int ResourceLeaks.fileOutputStreamTwoLeaks(boolean)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.twoResources()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.twoResourcesServerSocket()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.twoResourcesRandomAccessFile()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.nestedBad1()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.nestedBad2()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.objectInputStreamClosedNestedBad()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.objectOutputStreamClosedNestedBad()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.zipFileLeakExceptionalBranch()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "boolean ResourceLeaks.jarFileNotClosed()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.fileInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.pipedInputStreamNotClosedAfterRead(PipedOutputStream)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.pipedOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.objectOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.objectOutputStreamNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.objectInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.objectInputStreamNotClosedAfterRead()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.jarInputStreamLeak()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.nestedBadJarInputStream(File)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.jarOutputStreamLeak()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.nestedBadJarOutputStream()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.socketNotClosed()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.serverSocketNotClosed()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.openHttpURLConnectionNotDisconnected()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.openHttpsURLConnectionNotDisconnected()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.parseFromInputStreamAndLeak(JsonFactory)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "String ResourceLeaks.readInstallationFileBad(File)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "int ResourceLeaks.readConfigNotCloseStream(String)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.themeObtainTypedArrayAndLeak(Resources$Theme)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.activityObtainTypedArrayAndLeak(Activity)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.contextObtainTypedArrayAndLeak(Context)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.copyFileLeak(File,File)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.copyFileLeak(File,File)", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void ResourceLeaks.scannerNotClosed()", "file": "codetoanalyze/java/infer/ResourceLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void WriterLeaks.writerNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/WriterLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void WriterLeaks.printWriterNotClosedAfterAppend()", "file": "codetoanalyze/java/infer/WriterLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void WriterLeaks.bufferedWriterNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/WriterLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void WriterLeaks.outputStreamWriterNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/WriterLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void WriterLeaks.fileWriterNotClosedAfterWrite()", "file": "codetoanalyze/java/infer/WriterLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void WriterLeaks.pipedWriterNotClosedAfterConstructedWithReader()", "file": "codetoanalyze/java/infer/WriterLeaks.java" }, { "type": "RESOURCE_LEAK", "procedure": "void WriterLeaks.pipedWriterNotClosedAfterConnect(PipedReader)", "file": "codetoanalyze/java/infer/WriterLeaks.java" } ]