diff --git a/frontend/app/element/errorboundary.tsx b/frontend/app/element/errorboundary.tsx index 215ecdc17a..4efe1519a7 100644 --- a/frontend/app/element/errorboundary.tsx +++ b/frontend/app/element/errorboundary.tsx @@ -13,6 +13,7 @@ export class ErrorBoundary extends React.Component< } componentDidCatch(error: Error, errorInfo: React.ErrorInfo) { + console.log("ErrorBoundary caught an error:", error, errorInfo); this.setState({ error: error }); } diff --git a/frontend/app/view/preview/directorypreview.tsx b/frontend/app/view/preview/directorypreview.tsx index 36c299730b..b84ce4f079 100644 --- a/frontend/app/view/preview/directorypreview.tsx +++ b/frontend/app/view/preview/directorypreview.tsx @@ -385,12 +385,20 @@ function DirectoryTable({ useLayoutEffect(() => { const rows = table.getRowModel()?.flatRows; + let foundParentDir = false; + for (const row of rows) { if (row.getValue("name") == "..") { row.pin("top"); - return; + foundParentDir = true; + break; } } + + // If we didn't find the ".." row, reset the pinning to avoid stale references + if (!foundParentDir) { + table.resetRowPinning(); + } }, [table, data]); const columnSizeVars = useMemo(() => { const headers = table.getFlatHeaders();