diff --git a/client/ayon_houdini/plugins/publish/collect_current_file.py b/client/ayon_houdini/plugins/publish/collect_current_file.py index 8e339e0e04..1cadccf020 100644 --- a/client/ayon_houdini/plugins/publish/collect_current_file.py +++ b/client/ayon_houdini/plugins/publish/collect_current_file.py @@ -15,23 +15,15 @@ def process(self, context): """Inject the current working file""" current_file = hou.hipFile.path() - if not os.path.exists(current_file): + if ( + hou.hipFile.isNewFile() + or not os.path.exists(current_file) + ): # By default, Houdini will even point a new scene to a path. # However if the file is not saved at all and does not exist, # we assume the user never set it. + self.log.warning("Houdini workfile is unsaved.") current_file = "" - elif os.path.basename(current_file) == "untitled.hip": - # Due to even a new file being called 'untitled.hip' we are unable - # to confirm the current scene was ever saved because the file - # could have existed already. We will allow it if the file exists, - # but show a warning for this edge case to clarify the potential - # false positive. - self.log.warning( - "Current file is 'untitled.hip' and we are " - "unable to detect whether the current scene is " - "saved correctly." - ) - context.data["currentFile"] = current_file self.log.info('Current workfile path: {}'.format(current_file))