Open cfxegbert opened 5 months ago
hi @cfxegbert could you just paste the updated code snippet here? :) ~but you could do a pull request as well if you like, whatever is easier.~ thanks for spotting this, I personally don't have OSX (and don't do much testing on windows either :))
On second thought, please paste the code here, so I could test on linux right away without trying to pull from any repo, etc. I'll also try to test it on windows! :D
It seems no matter what the expression I use in
<labelExpression>'Shruggie'</labelExpression>
will crash Houdini 20
<label>Shruggie</label>
works fine.
I even tried
<labelExpression><![CDATA[
return 'Shruggie']]>
</labelExpression>
and it failed.
Maybe open an issue with SideFX on this one.
After more experiments it seems labelExpressions do not work in the MainMenuCommon.xml. The main menu on the Mac is the Apple menu bar and the rest of the menus are drawn by Houdini. I will come up with a simple example and send to SideFX. For the time being could the Shruggie be removed or changed to a plain text label.
Edit: Bug submitted to SideFX.
<?xml version="1.0" encoding="UTF-8"?>
<mainMenu>
<menuBar>
<subMenu id="testing_menu">
<insertBefore>help_menu</insertBefore>
<label>Testing</label>
<subMenu id="testing_submenu">
<label>Test Submenu</label>
<scriptItem id="h.test_label">
<label>Plain label</label>
<scriptCode>
<![CDATA[
hou.ui.displayMessage("Plain label")]]>
</scriptCode>
</scriptItem>
<scriptItem id="h.test_label_expression">
<labelExpression>'Expression label'</labelExpression>
<scriptCode>
<![CDATA[
hou.ui.displayMessage("Expression label")]]>
</scriptCode>
</scriptItem>
<separatorItem />
</subMenu>
</subMenu>
</menuBar>
</mainMenu>
The bug has been fixed on the 20.0.708 release. You should just stick with an ASCII label because the fix will not be available on older versions
@cfxegbert better later than never I guess, just rolled out 0.2.250, replaced shruggie menu item with something more ascii (?) friendly. Could you please test it and tell me if that's working? Thanks, much appreciated
@cfxegbert did you have an opportunity to test this yet?
Just tested. The current one in 0.2.255 does not work in houdini-19.5.x. Please change to an ASCII representation and do not use any code in a top level menu item.
Just tested. The current one in 0.2.255 does not work in houdini-19.5.x. Please change to an ASCII representation and do not use any code in a top level menu item.
@cfxegbert could you please specify what exactly is needed to be changed to an ASCII representation? I might be misunderstanding something, but I was under the impression that it's the menu item label, and I already replaced that with ASCII characters (or maybe not ASCII by strict definition but there's no "exotic" characters in there).
Is it the single quote character causing issues? (sorry I don't have direct access to a Mac)
(update: managed to ask someone on a Mac to test this and it was working for him -- could you please double check that you update to the latest version?)
Removing this block allows the plugin to load. https://github.com/qLab/qLib/blame/4f38e98ee9e65322f2a841868facd66511a622d5/MainMenuCommon.xml#L118-L126 My guess is there is a different XML parser on the Mac and it is decoding the UTF-8 before it is passed to decode() python function. Is this item necessary?
github will not let me fork the project right now saying the storage is down. I have cleaned up the XML (prettyfied it). Would you like me to submit a pull request?