@ai-ecoverse/slicc-kernel 1.135.6 → 1.135.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/node.js CHANGED
@@ -7486,7 +7486,7 @@ function satisfies(version, range2) {
7486
7486
  }
7487
7487
 
7488
7488
  // src/version.ts
7489
- var KERNEL_VERSION = true ? "1.135.6" : "0.0.0-dev";
7489
+ var KERNEL_VERSION = true ? "1.135.7" : "0.0.0-dev";
7490
7490
  var OS_RELEASE = "6.0.0-slicc";
7491
7491
  function procVersion() {
7492
7492
  return `Linux version ${OS_RELEASE} (slicc-kernel ${KERNEL_VERSION}) #1 SMP PREEMPT_DYNAMIC
@@ -2783,7 +2783,7 @@ var KERNEL_VERSION, OS_RELEASE;
2783
2783
  var init_version = __esm({
2784
2784
  "src/version.ts"() {
2785
2785
  "use strict";
2786
- KERNEL_VERSION = true ? "1.135.6" : "0.0.0-dev";
2786
+ KERNEL_VERSION = true ? "1.135.7" : "0.0.0-dev";
2787
2787
  OS_RELEASE = "6.0.0-slicc";
2788
2788
  }
2789
2789
  });
@@ -10813,12 +10813,18 @@ var init_wasi_host = __esm({
10813
10813
  if (errno2 === E.SUCCESS && disposition === SIG_IGN) this.sigmask?.discard(sig);
10814
10814
  return errno2;
10815
10815
  },
10816
- sigmask_set: (how, lo, hi, old) => this.sigmask ? this.sigmask.set(how, lo, hi, (oldLo, oldHi) => {
10817
- if (old === 0) return;
10818
- const view = mem.view();
10819
- view.setUint32(old, oldLo, true);
10820
- view.setUint32(old + 4, oldHi, true);
10821
- }) : E.NOSYS,
10816
+ sigmask_set: (how, lo, hi, old) => {
10817
+ if (!this.sigmask) return E.NOSYS;
10818
+ if (how === SIG_UNBLOCK || how === SIG_SETMASK) {
10819
+ this.signals?.unblocking(how === SIG_UNBLOCK ? lo << 1 : ~(lo << 1));
10820
+ }
10821
+ return this.sigmask.set(how, lo, hi, (oldLo, oldHi) => {
10822
+ if (old === 0) return;
10823
+ const view = mem.view();
10824
+ view.setUint32(old, oldLo, true);
10825
+ view.setUint32(old + 4, oldHi, true);
10826
+ });
10827
+ },
10822
10828
  sigmask_poll: (lo, hi, inPtr, outPtr, n, nevents) => this.sigmask ? this.maskedPoll(this.sigmask, [lo, hi], [inPtr, outPtr, n, nevents]) : E.NOSYS,
10823
10829
  sigmask_epoll_wait: (lo, hi, epfd, events, max, timeout, nevents) => this.sigmask ? this.maskedEpoll(
10824
10830
  this.sigmask,
@@ -12740,6 +12746,10 @@ var init_wasi_signals = __esm({
12740
12746
  nodefer = 0;
12741
12747
  running = 0;
12742
12748
  deferred = 0;
12749
+ lifted = 0;
12750
+ unblocking(bits) {
12751
+ this.lifted |= bits & this.running;
12752
+ }
12743
12753
  defaults = 0;
12744
12754
  nocldwait = false;
12745
12755
  fallBack;
@@ -12810,15 +12820,18 @@ var init_wasi_signals = __esm({
12810
12820
  return;
12811
12821
  }
12812
12822
  const bit = sigbit(sig);
12813
- if ((this.running & bit) !== 0 && (this.nodefer & bit) === 0) {
12823
+ if ((this.running & bit) !== 0 && ((this.nodefer | this.lifted) & bit) === 0) {
12814
12824
  this.deferred |= bit;
12815
12825
  return;
12816
12826
  }
12827
+ const outer = { running: this.running & bit, lifted: this.lifted & bit };
12817
12828
  this.running |= bit;
12829
+ this.lifted &= ~bit;
12818
12830
  try {
12819
12831
  this.run(handler, sig);
12820
12832
  } finally {
12821
- this.running &= ~bit;
12833
+ this.running = this.running & ~bit | outer.running;
12834
+ this.lifted = this.lifted & ~bit | outer.lifted;
12822
12835
  }
12823
12836
  if ((this.deferred & bit) === 0) return;
12824
12837
  this.deferred &= ~bit;