"return 1" doesn't anymore stop signals in perl scripts. Fixed

Irssi::signal_stop() to properly stop the signal from going to other
perl scripts.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1086 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Timo Sirainen 2001-01-07 08:23:06 +00:00 committed by cras
commit 14dbcd00bf
4 changed files with 20 additions and 18 deletions

View file

@ -318,6 +318,17 @@ int signal_get_emitted_id(void)
return rec->id;
}
/* return TRUE if specified signal was stopped */
int signal_is_stopped(int signal_id)
{
SIGNAL_REC *rec;
rec = g_hash_table_lookup(signals, GINT_TO_POINTER(signal_id));
g_return_val_if_fail(rec != NULL, FALSE);
return rec->emitting <= rec->stop_emit;
}
static void signal_remove_module(void *signal, SIGNAL_REC *rec,
const char *module)
{

View file

@ -42,6 +42,8 @@ void signal_stop_by_name(const char *signal);
const char *signal_get_emitted(void);
/* return the ID of the signal that is currently being emitted */
int signal_get_emitted_id(void);
/* return TRUE if specified signal was stopped */
int signal_is_stopped(int signal_id);
/* remove all signals that belong to `module' */
void signals_remove_module(const char *module);