- Sep 29, 2017
-
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
- Sep 28, 2017
-
-
Jonathan Wilkes authored
-
- Sep 27, 2017
-
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
- Sep 26, 2017
-
-
Jonathan Wilkes authored
This patch makes it possible to have multiple running instances of Purr Data, and to leverage that interface from Pd-l2ork to get [pd~] working on all platforms Some difficulties required revisions to [pd~] in Pd Vanilla's code * use quoted path args for Windows when starting the [pd~] subprocess * replace sys_havegui() from Pd Vanilla's recent "threadening" with sys_nogui The "-unique" flag requires the OSX app bundle to be able to start by calling the binary in Pd-l2ork.app/Contents/Resources/app.nw/bin/pd-l2ork. This should also make it possible to run Purr Data on OSX both by using an app bundle (where the GUI starts the Pd process) and by installing and running from the command line (where the Pd process starts the GUI) The "--user-data-dir" flag sets the directory for various nw.js state used by a running instance. To prevent races nw.js requires that each running instance have its own directory that is not shared with any other instances. Setting the value for this flag has two important potential side-effects: 1. If you have a running instance and try to start an additional instance that has the same data directory, nw.js will just send an "open" event the first running instance and exit the 2nd instance gracefully. This is the default nw.js behavior and the default Pd-l2ork behavior as well. 2. If you have a running instance and try to start an additional instance with a different data directory than the first, you'll get a fully functional 2nd instance of nw.js running. This is the behavior we desire when the user runs pd-l2ork with the "-unique" flag. In each case we set the data dir explicitly in order to get consistent positional command line arguments in the GUI. In normal mode Purr Data will use the default data dir as specified in the nw.js docs for the particular platorm. Since the same default dir is used each time Purr Data is run, there will be only one data dir that gets created. When run with the "-unique" flag, Purr Data will append "-$portno" to the default data directory, where $portno is the port Pd chose to communicate with the GUI. That ensures that each separate instance of Purr Data can get a unique data dir. A side effect is that users may end up generating multiple data dirs that don't get deleted on exit. But Pd starts searching for available ports in the same range each time, and unless the user tries to run hundreds of instances at once this directory spam shouldn't be too big of a problem.
-
- Aug 31, 2017
-
-
Jonathan Wilkes authored
-
- Aug 28, 2017
-
-
Jonathan Wilkes authored
-
- Aug 27, 2017
-
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
- Aug 26, 2017
-
-
Jonathan Wilkes authored
-
- Aug 25, 2017
-
-
Jonathan Wilkes authored
This is another stop-gap due to the GUI interface not protecting against messages that arrive before the GUI windows has finished loading.
-
Jonathan Wilkes authored
-
- Aug 24, 2017
-
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
The code for $@ depends on reading a_w.w_symbol values, but the other A_DOLLAR branch (i.e., for $1 - $n) depend on reading a_w.w_index. So for the conditional at the top of binbuf_eval, this means that any normal A_DOLLAR that has its a_w.w_index set is actually trying to read a_w.w_symbol. On a 64-bit arch with certain compilers, this will result in a read of uninitalized data in the padding of the part of w_symbol that exceeds the sizeof(int). The workaround here is to define a sentinel value DOLLARALL to a negative int unlikely to ever be used in real A_DOLLAR values. We then use DOLLARALL to mean the "@" in "$@" so we can create a special branch for it in the parser. One consequence-- we probably need to add a special case error when this value is out of range. So rather than confusing the user with the mysterious negative value of DOLLARALL we print "$@" for them. (Currently, the only place I can see this happening is when "$@" is used as the target for a Pd message.)
-
- Aug 23, 2017
-
-
Jonathan Wilkes authored
-
- Aug 22, 2017
-
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
It appears int and t_int were freely mixed in this external, causing a size discrepancy that can result in a buffer overflow. Since t_int is supposed to be function pointer-sized container, it's unclear why that would be used here. This commit changes all t_int use to int. If t_int was really meant here for some reason then we can go in the other direction.
-
- Aug 21, 2017
-
-
Jonathan Wilkes authored
-
- Aug 19, 2017
-
-
Jonathan Wilkes authored
-
- Aug 18, 2017
-
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-
- Aug 17, 2017
-
-
Jonathan Wilkes authored
matters. :(
-
- Aug 15, 2017
-
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
for aliased zexy classes from externals/Makefile
-
- Aug 14, 2017
-
-
Jonathan Wilkes authored
required by the Makefile)
-
Jonathan Wilkes authored
-
Jonathan Wilkes authored
-