summaryrefslogtreecommitdiff
path: root/test/node-api/test_cleanup_hook/binding.cc
blob: 9426716e674d22f66fa71fac04067021e416b9f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "node_api.h"
#include "uv.h"
#include "../../js-native-api/common.h"

namespace {

void cleanup(void* arg) {
  printf("cleanup(%d)\n", *static_cast<int*>(arg));
}

int secret = 42;
int wrong_secret = 17;

napi_value Init(napi_env env, napi_value exports) {
  napi_add_env_cleanup_hook(env, cleanup, &wrong_secret);
  napi_add_env_cleanup_hook(env, cleanup, &secret);
  napi_remove_env_cleanup_hook(env, cleanup, &wrong_secret);

  return nullptr;
}

}  // anonymous namespace

NAPI_MODULE(NODE_GYP_MODULE_NAME, Init)