Skip to content

Commit 8e8d38c

Browse files
authored
fix(app): prevent freeze when closing projects (anomalyco#39158)
1 parent a9bebd3 commit 8e8d38c

1 file changed

Lines changed: 18 additions & 17 deletions

File tree

packages/app/src/pages/home/home-projects-view.tsx

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -360,25 +360,26 @@ function HomeProjectSlot(
360360
index: () => number
361361
},
362362
) {
363-
const project = createMemo(() => props.items.find((item) => item.worktree === props.worktree))
363+
const initial = props.items.find((item) => item.worktree === props.worktree)
364+
if (!initial) return
365+
const project = createMemo<LocalProject>(
366+
(previous) => props.items.find((item) => item.worktree === props.worktree) ?? previous,
367+
initial,
368+
)
364369

365370
return (
366-
<Show when={project()}>
367-
{(item) => (
368-
<HomeProjectRow
369-
{...props}
370-
project={item()}
371-
server={props.server}
372-
index={props.index}
373-
serverSelected={props.selection().server === ServerConnection.key(props.server)}
374-
selected={
375-
props.selection().server === ServerConnection.key(props.server) &&
376-
props.selection().directory === props.worktree
377-
}
378-
unseen={props.unseenCount(props.server, item())}
379-
/>
380-
)}
381-
</Show>
371+
<HomeProjectRow
372+
{...props}
373+
project={project()}
374+
server={props.server}
375+
index={props.index}
376+
serverSelected={props.selection().server === ServerConnection.key(props.server)}
377+
selected={
378+
props.selection().server === ServerConnection.key(props.server) &&
379+
props.selection().directory === props.worktree
380+
}
381+
unseen={props.unseenCount(props.server, project())}
382+
/>
382383
)
383384
}
384385

0 commit comments

Comments
 (0)