Long buffer size requests on fl.sink~ or similar hang

Issue #79 resolved
Former user created an issue

By accident I passed the arguments '=' and '2' to fl.sink~ with a space in between. This produced an indefinite hang and can be reproduced.

fl.sink~ = 2 <- not okay

I assume its being its parsing the = as an argument and doesn't agree with this as its reserved for multi-stream things.

Seeing as its pretty easy to make this mistake and it can cause you to potentially lose work/have to restart max its fairly worth providing an exception to this kind of input and giving the user an error in the console.

Comments (8)

  1. Alex Harker repo owner

    This isn't about the = and nothing is actually going wrong here, expect that the arguments in the object result in a request for a massive buffer. I'll rename this as something more appropriate

  2. Former user Account Deleted reporter

    I suppose its a very specific accident to make, but its definitely an easy one to make especially if you do lots of multi-stream processes and separation at the output

  3. Alex Harker repo owner

    Yes - but what actually happens is that the buffer size is read as a string (error - it should be a number) and the 2 is used to select the units of the enum - as the default length of the buffer is in samples and now we are in seconds badness occurs. I'll sort it - just a bit more complex than I'd hoped for now...

  4. Former user Account Deleted reporter

    I feel like this is now fixed with the error handling which was implemented a while ago. I didn’t want to close unless this needs review - but just confirming that I don’t get the crash on my end and it all seems fine.

  5. Log in to comment