my $refresh = &::getChanConfDefault("freshmeatRefreshInterval",
"", 24) * 60 * 60 * 7;
- my $last_refresh = &::dbGet("freshmeat", "projectname_short", "_", "latest_version");
+ my $last_refresh = &::dbGet("freshmeat", "latest_version", "projectname_short='_'");
my $renewtable = 0;
if (defined $last_refresh and $last_refresh =~ /^\d+$/) {
sub showPackage {
my ($pkg) = @_;
- my @fm = &::dbGet("freshmeat", "projectname_short", $pkg, "*");
+ my @fm = &::dbGet("freshmeat", "*",
+ "projectname_short=".&dbQuote($pkg) );
if (scalar @fm) { #1: perfect match of name.
my $retval;
### lets get on with business.
# set the last refresh time. fixes multiple spawn bug.
- &::dbSet("freshmeat", "projectname_short", "_", "latest_version", time());
+ &::dbSet("freshmeat",
+ { "projectname_short" => "_" },
+ { "latest_version" => time() }
+ );
- &::dbRaw("LOCK", "LOCK TABLES freshmeat WRITE");
+# &::dbRaw("LOCK", "LOCK TABLES freshmeat WRITE");
@cols = &::dbGetColInfo("freshmeat");
$locktime = time();
s/æ/a/g;
s/ø/o/g;
s/ð/e/g;
+ s/ß//g;
+ s/·//g;
+ }
+
+ if (0 and $str =~ s/\&(\S+?);//g) {
+ &::DEBUG("fm: sarred $1 to ''.");
}
$p->parse($str, ProtocolEncoding => 'ISO-8859-1');
}
close IN;
- &::dbRaw("UNLOCK", "UNLOCK TABLES");
+# &::dbRaw("UNLOCK", "UNLOCK TABLES");
my $delta_time = &::timedelta($start_time);
&::status(sprintf("Freshmeat: %.02f sec to complete.", $delta_time)) if ($delta_time > 0);
}
$i++;
- &::dbSetRow("freshmeat", @data);
+ &::dbSetRow("freshmeat", [@data], "DELAY");
undef @data;
undef %pkg;
# I think the following leaks 120k of memory each time it's
# called... the wonders of libmysql-perl leaking!
- &::dbRaw("UNLOCK", "UNLOCK TABLES");
+# &::dbRaw("UNLOCK", "UNLOCK TABLES");
### another lame hack to "prevent" errors.
- select(undef, undef, undef, 0.2);
- &::dbRaw("LOCK", "LOCK TABLES freshmeat WRITE");
+# select(undef, undef, undef, 0.2);
+# &::dbRaw("LOCK", "LOCK TABLES freshmeat WRITE");
}
}
}