Skip to content

Error if project has empty Lua module #7

@ekharkunov

Description

@ekharkunov

Steps to reproduce:

  1. Open project
  2. Add empty Lua module
  3. Compile project

Result:
Screenshot 2023-05-22 at 21 28 54

2023-05-22 21:28:18.538 ERROR default    editor.code.script - {:line 516, :message "Lua preprocessing failed for file '/main/empty.lua'. Check the editor logs for exception info."}
java.lang.Exception: /main/empty.lua:1 mismatched input '<EOF>' expecting {'IF', 'ELSE', 'ENDIF', TEXT}
	at com.defold.extension.pipeline.LuaPreprocessor.preprocess(LuaPreprocessor.java:93)
	at editor.code.preprocessors$run_lua_preprocessor.invokeStatic(preprocessors.clj:92)
	at editor.code.preprocessors$preprocess_lua$fn__27257.invoke(preprocessors.clj:165)
	at clojure.lang.PersistentVector.reduce(PersistentVector.java:343)
	at clojure.core$reduce.invokeStatic(core.clj:6827)
	at editor.code.preprocessors$preprocess_lua.invokeStatic(preprocessors.clj:163)
	at editor.code.preprocessors$preprocess_lua_lines.invokeStatic(preprocessors.clj:171)
	at editor.code.script$fn__70522$fn__70527.invoke(script.clj:509)
	at editor.code.script$fn__70522.invokeStatic(script.clj:509)
	at editor.code.script$fn__70522.invoke(script.clj:499)
	at clojure.lang.AFn.applyToHelper(AFn.java:154)
	at clojure.lang.AFn.applyTo(AFn.java:144)
	at clojure.lang.AFunction$1.doInvoke(AFunction.java:31)
	at clojure.lang.RestFn.invoke(RestFn.java:408)
	at clojure.lang.Var.invoke(Var.java:384)
	at editor.code.script$ScriptNode$behavior$build_targets$fn__70645.invoke(script.clj:575)
	at internal.node$trace_expr$fn__7813.invoke(node.clj:38)
	at internal.node$trace_expr.invokeStatic(node.clj:38)
	at editor.code.script$ScriptNode$behavior$build_targets.invokeStatic(script.clj:575)
	at editor.code.script$ScriptNode$behavior$build_targets.invoke(script.clj:575)
	at clojure.lang.Var.invoke(Var.java:393)
	at internal.node.NodeImpl.produce_value(node.clj:295)
	at internal.node$node_value.invokeStatic(node.clj:454)
	at internal.system$node_value.invokeStatic(system.clj:354)
	at dynamo.graph$do_node_value.invokeStatic(graph.clj:824)
	at dynamo.graph$node_value.invokeStatic(graph.clj:827)
	at editor.build$build_project_BANG_$fn__37787.invoke(build.clj:53)
	at clojure.core$map$fn__5851.invoke(core.clj:2755)
	at clojure.lang.LazySeq.sval(LazySeq.java:42)
	at clojure.lang.LazySeq.seq(LazySeq.java:51)
	at clojure.lang.Cons.next(Cons.java:39)
	at clojure.lang.RT.next(RT.java:709)
	at clojure.core$next__5371.invokeStatic(core.clj:64)
	at clojure.core$dorun.invokeStatic(core.clj:3142)
	at clojure.core$doall.invokeStatic(core.clj:3148)
	at editor.build$batched_pmap$fn__37776.invoke(build.clj:25)
	at clojure.core$pmap$fn__8447$fn__8448.invoke(core.clj:7022)
	at clojure.core$binding_conveyor_fn$fn__5739.invoke(core.clj:2030)
	at clojure.lang.AFn.call(AFn.java:18)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:829)

Expected result
No error

Example project
extension-lua-preprocessor_repro.zip

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions