diff --git a/cdist/conf/type/__file/gencode-local b/cdist/conf/type/__file/gencode-local
index c79fc16a..932251fe 100755
--- a/cdist/conf/type/__file/gencode-local
+++ b/cdist/conf/type/__file/gencode-local
@@ -29,8 +29,11 @@ upload_file=
 create_file=
 if [ "$state_should" = "present" -o "$state_should" = "exists" ]; then
    if [ ! -f "$__object/parameter/source" ]; then
-      create_file=1
-      echo create >> "$__messages_out"
+      remote_stat="$(cat "$__object/explorer/stat")"
+      if [ -z "$remote_stat" ]; then
+          create_file=1
+          echo create >> "$__messages_out"
+      fi
    else
       source="$(cat "$__object/parameter/source")"
       if [ "$source" = "-" ]; then