diff --git a/source/blender/blenlib/intern/BLI_args.c b/source/blender/blenlib/intern/BLI_args.c index 4a46bf73f78..45061c5a150 100644 --- a/source/blender/blenlib/intern/BLI_args.c +++ b/source/blender/blenlib/intern/BLI_args.c @@ -120,6 +120,9 @@ bArgs *BLI_argsInit(int argc, const char **argv) ba->argc = argc; ba->argv = argv; + /* Must be initialized by #BLI_argsPassSet. */ + ba->current_pass = 0; + return ba; } @@ -133,6 +136,7 @@ void BLI_argsFree(struct bArgs *ba) void BLI_argsPassSet(struct bArgs *ba, int current_pass) { + BLI_assert((current_pass != 0) && (current_pass >= -1)); ba->current_pass = current_pass; } @@ -278,6 +282,7 @@ void BLI_argsPrintOtherDoc(struct bArgs *ba) void BLI_argsParse(struct bArgs *ba, int pass, BA_ArgCallback default_cb, void *default_data) { + BLI_assert((pass != 0) && (pass >= -1)); int i = 0; for (i = 1; i < ba->argc; i++) { /* skip argv[0] */ diff --git a/source/creator/creator_intern.h b/source/creator/creator_intern.h index fe8f8c4e20e..5f184e4cef3 100644 --- a/source/creator/creator_intern.h +++ b/source/creator/creator_intern.h @@ -57,14 +57,14 @@ extern struct ApplicationState app_state; /* creator.c */ * Keep in order of execution. */ enum { - ARG_PASS_ENVIRONMENT = 0, - ARG_PASS_SETTINGS = 1, + ARG_PASS_ENVIRONMENT = 1, + ARG_PASS_SETTINGS = 2, /** Windowing & graphical settings, ignored in background mode. */ - ARG_PASS_SETTINGS_GUI = 2, - ARG_PASS_SETTINGS_FORCE = 3, + ARG_PASS_SETTINGS_GUI = 3, + ARG_PASS_SETTINGS_FORCE = 4, /** Actions & fall back to loading blend file. */ - ARG_PASS_FINAL = 4, + ARG_PASS_FINAL = 5, }; /* for the callbacks: */