I have a small program where a gtk signal callback function needs 2 or 3 variables.
I don\'t want to make these global variables (The entire goal of the project is to be
Expanding on H2CO3's answer, you can also set the data (and I strongly recommend using a struct, by the way) to be freed automatically when the signal handler is disconnected:
g_signal_connect_data(save, "clicked", callback, data, (GClosureNotify)free, 0);