Facebook Infer Static Analyzer report
Branch: master
Commit: 985d28cc
Issue count: 53
Excluded: nothing
Analyzer: infer-linux64-v0.15.0.tar.xz (SHA-1: a00537dac367840c79c429d9fcea0d16bc0c7846)
Disclaimer: These results have not been thoroughly confirmed, and may be improbable or flat out invalid, but it's worth having a list of these somewhere.
Report summary:
- 21
NULL_DEREFERENCEissues - 17
LOCK_CONSISTENCY_VIOLATIONissues - 7
DEAD_STOREissues - 7
UNINITIALIZED_VALUEissues - 1
MEMORY_LEAKissue
Reported issues:
0. src/qt/splashscreen.cpp:39: error: DEAD_STORE
The value written to &devicePixelRatio (type float) is never used.
1. src/wallet/test/wallet_tests.cpp:40: error: NULL_DEREFERENCE
pointer `oldTip` last assigned on line 39 could be null and is dereferenced at line 40, column 22.
2. src/qt/paymentrequest.pb.cc:53: error: NULL_DEREFERENCE
pointer `file` last assigned on line 49 could be null and is dereferenced at line 53, column 24.
3. src/secp256k1/src/ecmult_impl.h:59: error: NULL_DEREFERENCE
pointer `null` could be null and is dereferenced by call to `secp256k1_gej_double_var()` at line 59, column 5.
4. src/secp256k1/src/secp256k1.c:60: error: NULL_DEREFERENCE
pointer `ret` last assigned on line 59 could be null and is dereferenced at line 60, column 5.
5. src/secp256k1/src/secp256k1.c:85: error: NULL_DEREFERENCE
pointer `ret` last assigned on line 84 could be null and is dereferenced at line 85, column 5.
6. src/test/blockfilter_tests.cpp:134: error: DEAD_STORE
The value written to &pos (type unsigned int) is never used.
7. src/serialize.h:131: error: UNINITIALIZED_VALUE
The value read from tmp.y was never initialized.
8. src/secp256k1/src/group_impl.h:137: error: NULL_DEREFERENCE
pointer `az` last assigned on line 134 could be null and is dereferenced at line 137, column 13.
9. src/serialize.h:137: error: UNINITIALIZED_VALUE
The value read from tmp.y was never initialized.
10. src/serialize.h:143: error: UNINITIALIZED_VALUE
The value read from tmp.x was never initialized.
11. src/leveldb/db/dumpfile.cc:166: error: NULL_DEREFERENCE
pointer `table` last assigned on line 156 could be null and is dereferenced at line 166, column 20.
12. src/serialize.h:149: error: UNINITIALIZED_VALUE
The value read from tmp.x was never initialized.
13. src/leveldb/db/c.cc:148: error: NULL_DEREFERENCE
pointer `result` last assigned on line 147 could be null and is dereferenced by call to `memcpy()` at line 148, column 3.
14. src/test/net_tests.cpp:187: error: DEAD_STORE
The value written to &id (type long) is never used.
15. src/qt/guiutil.cpp:204: error: DEAD_STORE
The value written to ¶mCount (type int) is never used.
16. src/secp256k1/src/ecmult_impl.h:203: error: NULL_DEREFERENCE
pointer `dst->pre_g` last assigned on line 202 could be null and is dereferenced by call to `memcpy()` at line 203, column 9.
17. src/index/base.cpp:242: error: NULL_DEREFERENCE
pointer `chain_tip` last assigned on line 240 could be null and is dereferenced at line 242, column 43.
18. src/leveldb/util/cache.cc:276: error: NULL_DEREFERENCE
pointer `e` last assigned on line 274 could be null and is dereferenced at line 276, column 3.
19. src/secp256k1/src/ecmult_impl.h:371: error: NULL_DEREFERENCE
pointer `null` could be null and is dereferenced by call to `secp256k1_gej_double_var()` at line 371, column 9.
20. src/serialize.h:385: error: UNINITIALIZED_VALUE
The value read from tmp[_] was never initialized.
21. src/rpc/blockchain.cpp:690: error: NULL_DEREFERENCE
pointer `pblockindex` last assigned on line 689 could be null and is dereferenced at line 690, column 12.
22. src/policy/fees.cpp:829: error: DEAD_STORE
The value written to &median (type double) is never used.
23. src/net_processing.cpp:937: error: NULL_DEREFERENCE
pointer `state` last assigned on line 934 could be null and is dereferenced at line 937, column 13.
24. src/test/script_tests.cpp:999: error: DEAD_STORE
The value written to &pos (type unsigned int) is never used.
25. src/wallet/wallet.cpp:1206: error: NULL_DEREFERENCE
pointer `initialChainTip` last assigned on line 1204 could be null and is dereferenced at line 1206, column 75.
26. src/validation.cpp:1341: error: NULL_DEREFERENCE
pointer `pindexPrev` last assigned on line 1340 could be null and is dereferenced at line 1341, column 12.
27. src/net_processing.cpp:1376: error: NULL_DEREFERENCE
pointer `nodestate` last assigned on line 1365 could be null and is dereferenced at line 1376, column 13.
28. src/wallet/wallet.cpp:2944: error: UNINITIALIZED_VALUE
The value read from nBytes was never initialized.
29. src/wallet/wallet.cpp:2944: error: UNINITIALIZED_VALUE
The value read from nFeeNeeded was never initialized.
30. src/net_processing.cpp:2934: error: NULL_DEREFERENCE
pointer `__range` last assigned on line 2934 could be null and is dereferenced at line 2934, column 41.
31. src/net_processing.cpp:2938: error: NULL_DEREFERENCE
pointer `state` last assigned on line 2931 could be null and is dereferenced at line 2938, column 5.
32. src/net_processing.cpp:3089: error: NULL_DEREFERENCE
pointer `state` last assigned on line 3086 could be null and is dereferenced at line 3089, column 10.
33. src/net_processing.cpp:3173: error: NULL_DEREFERENCE
pointer `state` last assigned on line 3172 could be null and is dereferenced at line 3173, column 87.
34. src/validation.cpp:3944: error: MEMORY_LEAK
`pindex` is not reachable after line 3944, column 5.
35. src/validation.cpp:4362: error: DEAD_STORE
The value written to &nRewind (type unsigned long) is never used.
36. src/wallet/wallet.cpp:267: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_AddKeyPubKeyWithDB` reads without synchronization from `this.encrypted_batch`. Potentially races with write in method `AddKeyPubKeyWithDB`.
37. src/wallet/wallet.cpp:1376: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_DeriveNewSeed` indirectly reads without synchronization from `pj.infinity`. Potentially races with write in method `DeriveNewSeed`.
38. src/wallet/wallet.cpp:1377: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_DeriveNewSeed` indirectly reads without synchronization from `rr_alt.n.[_]`. Potentially races with write in method `DeriveNewSeed`.
39. src/wallet/wallet.cpp:1377: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_DeriveNewSeed` indirectly reads without synchronization from `rr_alt.n.[_]`. Potentially races with write in method `CreateWalletFromFile`.
40. src/wallet/wallet.cpp:1377: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_DeriveNewSeed` indirectly reads without synchronization from `rr_alt.n.[_]`. Potentially races with write in method `AddKeyPubKeyWithDB`.
41. src/wallet/wallet.cpp:1376: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_DeriveNewSeed` indirectly reads without synchronization from `pj.infinity`. Potentially races with write in method `CreateWalletFromFile`.
42. src/wallet/wallet.cpp:1376: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_DeriveNewSeed` indirectly reads without synchronization from `pj.infinity`. Potentially races with write in method `AddKeyPubKeyWithDB`.
43. src/wallet/wallet.cpp:192: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_GenerateNewKey` indirectly reads without synchronization from `this.nWalletMaxVersion`. Potentially races with write in method `BlockDisconnected`.
44. src/wallet/wallet.cpp:798: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_IncOrderPosNext` reads without synchronization from `this.nOrderPosNext`. Potentially races with write in method `BlockDisconnected`.
45. src/wallet/wallet.cpp:323: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_LoadKeyMetadata` indirectly reads without synchronization from `this.nTimeFirstKey`. Potentially races with write in method `BlockDisconnected`.
46. src/wallet/wallet.cpp:3199: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_LoadKeyPool` reads without synchronization from `this.m_max_keypool_index`. Potentially races with write in method `BlockDisconnected`.
47. src/wallet/wallet.h:813: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_LoadMinVersion` reads without synchronization from `this.nWalletMaxVersion`. Potentially races with write in method `BlockDisconnected`.
48. src/wallet/wallet.cpp:330: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_LoadScriptMetadata` indirectly reads without synchronization from `this.nTimeFirstKey`. Potentially races with write in method `BlockDisconnected`.
49. src/wallet/wallet.cpp:938: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_LoadToWallet` reads without synchronization from container `this.mapWallet` via call to `find`. Potentially races with write in method `ZapSelectTx`.
50. src/wallet/wallet.cpp:2463: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_SignTransaction` reads without synchronization from container `this.mapWallet` via call to `find`. Potentially races with write in method `ZapSelectTx`.
51. src/wallet/wallet.cpp:350: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_UpdateTimeFirstKey` reads without synchronization from `this.nTimeFirstKey`. Potentially races with write in method `BlockDisconnected`.
52. src/wallet/wallet.cpp:350: error: LOCK_CONSISTENCY_VIOLATION
Read/Write race. Non-private method `CWallet_UpdateTimeFirstKey` reads without synchronization from `this.nTimeFirstKey`. Potentially races with write in method `RescanFromTime`.