gcsfuse/patch/v2.7.0/internal/fs/fs.go (29 lines of code) (raw):
--- fs.go 2025-01-08 23:54:23.593793132 +0000
+++ fs_cloud_run_gen1.go 2025-01-08 23:53:20.664160603 +0000
@@ -1303,7 +1303,8 @@
tmp := fs.inodes[id]
in, ok := tmp.(*inode.FileInode)
if !ok {
- panic(fmt.Sprintf("inode %d is %T, wanted *inode.FileInode", id, tmp))
+ // panic(fmt.Sprintf("inode %d is %T, wanted *inode.SymlinkInode", id, tmp))
+ return nil
}
return
@@ -1318,7 +1319,8 @@
tmp := fs.inodes[id]
in, ok := tmp.(*inode.SymlinkInode)
if !ok {
- panic(fmt.Sprintf("inode %d is %T, wanted *inode.SymlinkInode", id, tmp))
+ // panic(fmt.Sprintf("inode %d is %T, wanted *inode.SymlinkInode", id, tmp))
+ return nil
}
return
@@ -2542,6 +2544,10 @@
in := fs.fileInodeOrDie(op.Inode)
fs.mu.Unlock()
+ if in == nil {
+ return nil
+ }
+
in.Lock()
defer in.Unlock()