fix overfire bug

async-fork
Dominic Gannaway 7 months ago
parent 054f8261a9
commit 3da337beea

@ -1,6 +1,7 @@
/** @import { Effect, TemplateNode, } from '#client' */
import {
ASYNC_DERIVED,
BOUNDARY_EFFECT,
BOUNDARY_SUSPENDED,
DERIVED,
@ -173,7 +174,7 @@ export function boundary(node, props, children) {
for (var [signal, entry] of forks) {
if (signal.v !== entry.v) {
if ((signal.f & DERIVED) === 0) {
if ((signal.f & (DERIVED | ASYNC_DERIVED)) === 0) {
mark_reactions(signal, DIRTY, undefined, true);
signal.wv = increment_write_version();
}

@ -284,7 +284,7 @@ export function mark_reactions(signal, status, parent, only_boundary = false) {
if (only_boundary) {
if ((flags & DERIVED) === 0) {
var boundary = get_boundary(/** @type {Effect} */ (reaction));
if (!boundary) {
if (!boundary || (reaction.f & ASYNC_DERIVED) !== 0) {
continue;
}
}

Loading…
Cancel
Save