my $IPC_PRIVATE = 0;
my $size = 2000;
- if (&IsParam("noSHM")) {
+ if (&IsParam('noSHM')) {
&status("Shared memory: Disabled. WARNING: bot may become unreliable");
return 0;
}
my $size = 3*80;
my $retval = '';
- return '' if (&IsParam("noSHM"));
+ return '' if (&IsParam('noSHM'));
if (shmread($key,$retval,$position,$size)) {
+ #&DEBUG("shmRead($key): $retval");
return $retval;
} else {
&ERROR("shmRead: failed: $!");
my $position = 0;
my $size = 80*3;
- return if (&IsParam("noSHM"));
+ return if (&IsParam('noSHM'));
if (length($str) > $size) {
&status("ERROR: length(str) (..)>$size...");
my $read = &shmRead($key);
$read =~ s/\0+//g;
- if ($read eq "") {
- $str = sprintf("%s:%d:%d: ", $param{ircNick}, $bot_pid, time());
+ if ($read eq '') {
+ $str = sprintf("%s:%d:%d: ", $param{ircUser}, $bot_pid, time());
} else {
$str = $read ."||". $str;
}
- if (!shmwrite($key, '', $position, $size)) {
+ if (!shmwrite($key, $str, $position, $size)) {
+ &DEBUG("shmWrite($key, $str)");
&ERROR("shmWrite: failed: $!");
}
}
if ($count > 3) { # 3 seconds.
my $list = join(', ', keys %forked);
if (defined $who) {
- &msg($who, "exceeded allowed forked count: $list");
+ &msg($who, "exceeded allowed forked count (shm $shm): $list");
} else {
- &status("Fork: I ran too many forked processes :) Giving up $name.");
+ &status("Fork: I ran too many forked processes :) Giving up $name. Shm: $shm");
}
return 0;
return if ($$ != $::bot_pid); # fork protection.
if (@_) {
- &ScheduleThis(5, "shmFlush");
- return if ($_[0] eq "2");
+ &ScheduleThis(15, 'shmFlush');
+ return if ($_[0] eq '2');
}
my $time;
my $shmmsg = &shmRead($shm);
- $shmmsg =~ s/\0//g; # remove padded \0's.
+ # remove padded \0's.
+ $shmmsg =~ s/\0//g;
return if (length($shmmsg) == 0);
if ($shmmsg =~ s/^(\S+):(\d+):(\d+): //) {
my $n = $1;
}
}
- &shmWrite($shm,"") if ($shmmsg ne "");
+ &shmWrite($shm,'') if ($shmmsg ne '');
}
1;