Font bug causes defold to freeze (UNSOLVED)

oh dear, I am having a mega-disaster here. Let me explain…

  1. Everything is working fine
  2. I try and change the blend mode to multiply in a Label
  3. I get an error message and Defold freezes (invalid something something something). I force quit
  4. I reopen Defold and try to recreate error
  5. I don’t get the error message, defold freezes
  6. I can no longer reopen the collection that contains that label and I get this message when I try and do so:
org.eclipse.ui.PartInitException: collection node could not be loaded: Argument not valid
	at com.dynamo.cr.sceneed.ui.SceneEditor.init(SceneEditor.java:232)
	at org.eclipse.ui.internal.EditorManager.createSite(EditorManager.java:828)
	at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:647)
	at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:465)
	at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
	at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:289)
	at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2958)
	at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2863)
	at org.eclipse.ui.internal.WorkbenchPage.access$11(WorkbenchPage.java:2855)
	at org.eclipse.ui.internal.WorkbenchPage$10.run(WorkbenchPage.java:2806)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2802)
	at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2786)
	at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2777)
	at org.eclipse.ui.ide.IDE.openEditor(IDE.java:655)
	at org.eclipse.ui.ide.IDE.openEditor(IDE.java:614)
	at org.eclipse.ui.actions.OpenFileAction.openFile(OpenFileAction.java:99)
	at org.eclipse.ui.actions.OpenSystemEditorAction.run(OpenSystemEditorAction.java:99)
	at org.eclipse.ui.actions.RetargetAction.run(RetargetAction.java:221)
	at org.eclipse.ui.navigator.CommonNavigatorManager$3.open(CommonNavigatorManager.java:185)
	at org.eclipse.ui.OpenAndLinkWithEditorHelper$InternalListener.open(OpenAndLinkWithEditorHelper.java:48)
	at org.eclipse.jface.viewers.StructuredViewer$2.run(StructuredViewer.java:866)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
	at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
	at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
	at org.eclipse.jface.viewers.StructuredViewer.fireOpen(StructuredViewer.java:864)
	at org.eclipse.jface.viewers.StructuredViewer.handleOpen(StructuredViewer.java:1152)
	at org.eclipse.ui.navigator.CommonViewer.handleOpen(CommonViewer.java:462)
	at org.eclipse.jface.viewers.StructuredViewer$6.handleOpen(StructuredViewer.java:1256)
	at org.eclipse.jface.util.OpenStrategy.fireOpenEvent(OpenStrategy.java:275)
	at org.eclipse.jface.util.OpenStrategy.access$2(OpenStrategy.java:269)
	at org.eclipse.jface.util.OpenStrategy$1.handleEvent(OpenStrategy.java:309)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4136)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1458)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1481)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1466)
	at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1271)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3982)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3621)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2701)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2665)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at com.dynamo.cr.editor.Application.start(Application.java:42)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
Caused by: org.eclipse.core.runtime.CoreException: collection node could not be loaded: Argument not valid
	at com.dynamo.cr.sceneed.core.ScenePresenter.onLoad(ScenePresenter.java:83)
	at com.dynamo.cr.sceneed.ui.SceneLoader.run(SceneLoader.java:25)
	at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:464)
	at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:372)
	at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:507)
	at org.eclipse.ui.internal.progress.ProgressMonitorJobsDialog.run(ProgressMonitorJobsDialog.java:275)
	at org.eclipse.ui.internal.progress.ProgressManager.run(ProgressManager.java:1162)
	at org.eclipse.ui.internal.progress.ProgressManager$RunnableWithStatus.run(ProgressManager.java:1346)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.progress.ProgressManager$7.run(ProgressManager.java:1184)
	at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:180)
	at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150)
	at org.eclipse.swt.widgets.Display.syncExec(Display.java:4607)
	at org.eclipse.ui.internal.progress.ProgressManager.runInUI(ProgressManager.java:1182)
	at com.dynamo.cr.sceneed.ui.SceneEditor.init(SceneEditor.java:230)
	... 59 more
Caused by: org.eclipse.core.runtime.CoreException: Argument not valid
	at com.dynamo.cr.sceneed.ui.LoaderContext.loadNode(LoaderContext.java:69)
	at com.dynamo.cr.sceneed.ui.LoaderContext.loadNode(LoaderContext.java:79)
	at com.dynamo.cr.go.core.CollectionLoader.load(CollectionLoader.java:88)
	at com.dynamo.cr.go.core.CollectionLoader.load(CollectionLoader.java:1)
	at com.dynamo.cr.sceneed.core.ScenePresenter.onLoad(ScenePresenter.java:79)
	... 73 more
Caused by: org.eclipse.core.runtime.CoreException: Argument not valid
	at com.dynamo.cr.sceneed.ui.LoaderContext.loadNode(LoaderContext.java:69)
	at com.dynamo.cr.sceneed.ui.LoaderContext.loadNode(LoaderContext.java:52)
	at com.dynamo.cr.go.core.GameObjectLoader.load(GameObjectLoader.java:45)
	at com.dynamo.cr.go.core.GameObjectLoader.load(GameObjectLoader.java:1)
	at com.dynamo.cr.sceneed.ui.LoaderContext.loadNode(LoaderContext.java:67)
	... 77 more
Caused by: java.lang.IllegalArgumentException: Argument not valid
	at org.eclipse.swt.SWT.error(SWT.java:4342)
	at org.eclipse.swt.SWT.error(SWT.java:4276)
	at org.eclipse.swt.SWT.error(SWT.java:4247)
	at org.eclipse.swt.graphics.RGB.<init>(RGB.java:76)
	at com.dynamo.cr.sceneed.core.util.LoaderUtil.toRGB(LoaderUtil.java:105)
	at com.dynamo.cr.ddfeditor.scene.LabelLoader.load(LabelLoader.java:35)
	at com.dynamo.cr.ddfeditor.scene.LabelLoader.load(LabelLoader.java:1)
	at com.dynamo.cr.sceneed.ui.LoaderContext.loadNode(LoaderContext.java:67)
	... 81 more

I re-opened again and found the blend mode had changed itself back to alpha and now it works fine. I saved a new branch and was able to recreate the error:

An error has occurred. See error log for more details.
Invalid path '/blend_mode'. No such element 'blend_mode' in 'LabelDesc'

Side note: If anyone could tell me how to get the font to look like this in the game I’d be very grateful. I have spent a great number of hours trying to make it work:

Hmm, I’m not able to reproduce the blend mode issue. What are the exact steps you are taking to reproduce the error?

1 Like

I can no longer reproduce the error. Oh no! but also: yeah!!

1 Like

If it does happen again please let us know!

Hi! This has happened again.

How to reproduce the error:

  1. Change the font blend to alpha
  2. Defold crashes
  3. It is no longer possible to access that scene. Weirdly, I can still run that scene from the game. It says “Could not open the editor: collection node could not be loaded: Argument not valid”

After deleting the font file which was contained within the collection, i was then able to open the collection again

I this using the new editor or the old one? Or doesn’t it work in either of them?

Old editor. Should i switch to the new one?

Would you mind trying the new one and see if the same problem happens there?

eventually, yes, I will look at the new one.