mirror of
https://github.com/irssi/irssi.git
synced 2026-08-11 12:53:42 +02:00
"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:
parent
a2d9661982
commit
14dbcd00bf
4 changed files with 20 additions and 18 deletions
|
|
@ -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)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -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);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue