aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--weed/filer2/filer.go6
1 files changed, 6 insertions, 0 deletions
diff --git a/weed/filer2/filer.go b/weed/filer2/filer.go
index 659054d86..0dde08d04 100644
--- a/weed/filer2/filer.go
+++ b/weed/filer2/filer.go
@@ -132,6 +132,12 @@ func (f *Filer) CreateEntry(entry *Entry) error {
return fmt.Errorf("insert entry %s: %v", entry.FullPath, err)
}
} else {
+ if oldEntry.IsDirectory() && !entry.IsDirectory() {
+ return fmt.Errorf("existing %s is a directory", entry.FullPath)
+ }
+ if !oldEntry.IsDirectory() && entry.IsDirectory() {
+ return fmt.Errorf("existing %s is a file", entry.FullPath)
+ }
if err := f.store.UpdateEntry(entry); err != nil {
return fmt.Errorf("update entry %s: %v", entry.FullPath, err)
}