| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent df52814 commit a93ca2d
2 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -228,10 +228,9 @@ class RefBase : protected Finalizer, RefTracker { | |||
| 228 | 228 | // from one of Unwrap or napi_delete_reference. | |
| 229 | 229 | // | |
| 230 | 230 | // When it is called from Unwrap or napi_delete_reference we only | |
| 231 | - // want to do the delete if there is no finalizer or the finalizer has already | ||
| 232 | - // run or cannot have been queued to run (i.e. the reference count is > 0), | ||
| 231 | + // want to do the delete if the finalizer has already run or | ||
| 232 | + // cannot have been queued to run (ie the reference count is > 0), | ||
| 233 | 233 | // otherwise we may crash when the finalizer does run. | |
| 234 | - // | ||
| 235 | 234 | // If the finalizer may have been queued and has not already run | |
| 236 | 235 | // delay the delete until the finalizer runs by not doing the delete | |
| 237 | 236 | // and setting _delete_self to true so that the finalizer will | |
@@ -243,7 +242,6 @@ class RefBase : protected Finalizer, RefTracker { | |||
| 243 | 242 | static inline void Delete(RefBase* reference) { | |
| 244 | 243 | reference->Unlink(); | |
| 245 | 244 | if ((reference->RefCount() != 0) || | |
| 246 | - (reference->_finalize_callback == nullptr) || | ||
| 247 | 245 | (reference->_delete_self) || | |
| 248 | 246 | (reference->_finalize_ran)) { | |
| 249 | 247 | delete reference; | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1,6 +1,12 @@ | |||
| 1 | 1 | 'use strict'; | |
| 2 | 2 | const common = require('../../common'); | |
| 3 | 3 | ||
| 4 | + // TODO(addaleax): Run this test once it stops failing under ASAN/valgrind. | ||
| 5 | + // Refs: https://github.com/nodejs/node/issues/34731 | ||
| 6 | + // Refs: https://github.com/nodejs/node/pull/35777 | ||
| 7 | + // Refs: https://github.com/nodejs/node/issues/35778 | ||
| 8 | + common.skip('Reference management in N-API leaks memory'); | ||
| 9 | + | ||
| 4 | 10 | const { Worker, isMainThread } = require('worker_threads'); | |
| 5 | 11 | ||
| 6 | 12 | if (isMainThread) { | |
| Back | FazBrowse Home | New Git URL |
0 commit comments