christophhart / HISE

The open source framework for sample based instruments
http://hise.audio
Other
1.02k stars 118 forks source link

[Crash/Breaking] Linking Table Data to a Table Inside a DSP Network While Referring to It With a Script Table Crashes HISE When Opening the Network #541

Open aaronventure opened 3 months ago

aaronventure commented 3 months ago

This is effectively a copy of the Switch Table snippet, but it includes the table from an uncompiled DSP network.

HiseSnippet 1296.3ocuWstaaaCElxNJYwqYXAX6+B9WtnYt1ccsCKanMwwdyaKIFUdoEnHHfQhNlvRjBTzM1an+eOS6IXON8MX6bHsrjxktLis5fXHdtoO9ctP5AJY.KMUpHNaNbdBi3bOW+4B83NiobAo+ADmOw8PZplo7rh1edBMMkERbbp98n.mMWiX97tmsOMhJBX4hHjSj7.1Oyi45boCd9Owih5QCYC4wEr9wOuefTzQFImB3opaKRBMXB8B1QTzrJtDm06Fx0RkulpYoDm01WFN2er7Rg09S3o7yiX3h1DeHPVw8jQgHhQojNi4QgCx12oDHJCxYgpVV3ybOjGxWJOmM9TiBubOJxGNUJCupkfW6hvqUA3cCPxo.jbsPZaW+.EOQmqAwyG61W.ImQTf1KBkilFOjBuK.EtN0.x05LoxeTwsiDbQnaFSmv5ofEKCQimzp0NdvW2e2Z0fbQp16MTkm02dups224YpNZdASaB+Rvznt0HOvp5k8ViFd.USAue8o6VajT40fCKZsqG+aaie+fGb+Z+VsMWZ4q4mB56JtfKXMCTLfN2SD9B1EbrRbXlYM3va5s0p8vG50QwRC7LZ79Bu9hP1LuVvScmANHnQd9QRsW6BvJ.8v3vK4gv9AdgYDCMLznnQ8bipuiW6V3+vqLytTFlMRXJMmkBLY7O5e7QWwIbeU+Rdndb8uw6Q.8BKGy3WLVCqepYoYaafLHBj71x7Wd3P5OKUrLEz.QTtMMi3hICkMx4xVmVx.6tsohMBXRogFKa6noh.MWJ7jhijZ1whFljCPzdWU0nQ2nNjeTxnHl5FUic8p2miMDSiOmo1A19QSYKMD5TK2e4d68WEa+CroqBFJE8Eb8wILwsMTfrHGi8hKPE750lNwsVzIZnSBODGZlyuDCnKNCLDXVy3KxuzGY4rXBgOu7Ajc.6MvvRa29ltGvRmnkIFaiSjBDLNqemPvrrl94YOXJ.gnt9et.S1RPTRuLXVXjyZVP.C6jgSin5xS.ww9KT.osRicvIIhTtddwiE9Oar3cEha6NfqCFeyXrxMfQHi7+AFWbXxVtcGMhEnyA3Zt8d0GtSNp4lM0v7xuma9n5a+LCm7yLb9c27lzDEKgpXCkChnyajRiShXu..8NdmGICl3y+U106rSrXZezhFAioBAKJcUF.r9cllZ+9yRuPNUyEWbHUq3X6Br28gqcDv5r.cHGTAmCXW2BWiEJ9LQnYweAeVnr8RBCT1NSY9HDxQL8kR0DS9YwyDmMrIiTCIe1nYsI6EEIuD614KJagjhQ1.Yz7jwRAO.EYsHCo6EKmhiFrv8GnoCo7HrN2eZJLfK7XgOXr4ZYNUOgoRMAdC2VMg+f59ijgfJ2dz.fXmOfhyI11EmYBUqLUyfkUskvZoBGHDYWayxR.DiMCrvKsUsvTNaAJtBZ+pXiZ+zSPsAzHxI1YmvVAiokur3CMcK2.r97Ly4UjRH9yMHFJcZVzj+EfbshfjjO5XHUAGWZOQ.q0mkMAeQqR1S3tAOBOK3cgB3P3VmFyypHFPUvUYgajXIhrUPc8gbwIW8biCoythr28LeMKA6wJZm+D1kVxnnkHgsgqM.WKzkPBYeobRL0TetRGQ8AoaJlFnjmsHKi72GYj.kWByOOXS32o.q8Ze8CfigqreVPP4PcMGezp53WtpN93U0wuZUc7IqpiOcUc7q+mcD+EU6MUKisC8fB+AcssMNcEXuko+k72v8EyQP

Just load the snippet and try to open the network. HISE will crash.

If you remove any of the two lines

crescTable.linkTo(tableData[0]);
crescTableWidget.referToData(tableData[0]);

it won't crash when opening the network because they're not linked/referring to the same table data.

The table in the DSP network is set to external slot #1 (index 0).

The table reference is correct as the methods from the Table class work and can manipulate the table (reset, point creation etc.)

macOS 14.5 62247f62186b5461b34f1f6137e51bf3ef3e4c23

Damn, ScriptNode is janky as fuck 😄