ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/Deliantra-Client/DC.pm
(Generate patch)

Comparing deliantra/Deliantra-Client/DC.pm (file contents):
Revision 1.127 by root, Thu Nov 16 19:42:44 2006 UTC vs.
Revision 1.131 by root, Tue Dec 5 00:52:56 2006 UTC

15package CFPlus; 15package CFPlus;
16 16
17use Carp (); 17use Carp ();
18 18
19BEGIN { 19BEGIN {
20 $VERSION = '0.95'; 20 $VERSION = '0.97';
21 21
22 use XSLoader; 22 use XSLoader;
23 XSLoader::load "CFPlus", $VERSION; 23 XSLoader::load "CFPlus", $VERSION;
24}
25
26BEGIN {
27 $SIG{__DIE__} = sub {
28 return if CFPlus::in_destruct;
29 #CFPlus::fatal $_[0];#d#
30 CFPlus::error Carp::longmess $_[0];#d#
31 die;#d#
32 };
33} 24}
34 25
35use utf8; 26use utf8;
36 27
37use AnyEvent (); 28use AnyEvent ();
274} 265}
275 266
276{ 267{
277 use strict; 268 use strict;
278 269
279 mkdir "$Crossfire::VARDIR/cfplus", 0777; 270 my $HOME = "$Crossfire::VARDIR/cfplus-$BerkeleyDB::db_version";
271
272 mkdir $HOME, 0777;
280 my $recover = $BerkeleyDB::db_version >= 4.4 273 my $recover = $BerkeleyDB::db_version >= 4.4
281 ? eval "DB_REGISTER | DB_RECOVER" 274 ? eval "DB_REGISTER | DB_RECOVER"
282 : 0; 275 : 0;
283 276
284 $DB_ENV = new BerkeleyDB::Env 277 $DB_ENV = new BerkeleyDB::Env
285 -Home => "$Crossfire::VARDIR/cfplus", 278 -Home => $HOME,
286 -Cachesize => 1_000_000, 279 -Cachesize => 1_000_000,
287 -ErrFile => "$Crossfire::VARDIR/cfplus/errorlog.txt", 280 -ErrFile => "$Crossfire::VARDIR/cfplus/errorlog.txt",
288# -ErrPrefix => "DATABASE", 281# -ErrPrefix => "DATABASE",
289 -Verbose => 1, 282 -Verbose => 1,
290 -Flags => DB_CREATE | DB_RECOVER | DB_INIT_MPOOL | DB_INIT_LOCK | DB_INIT_TXN | $recover, 283 -Flags => DB_CREATE | DB_RECOVER | DB_INIT_MPOOL | DB_INIT_LOCK | DB_INIT_TXN | $recover,
291 -SetFlags => DB_AUTO_COMMIT | DB_LOG_AUTOREMOVE, 284 -SetFlags => DB_AUTO_COMMIT | DB_LOG_AUTOREMOVE,
292 or die "unable to create/open database home $Crossfire::VARDIR/cfplus: $BerkeleyDB::Error"; 285 or die "unable to create/open database home $HOME: $BerkeleyDB::Error";
293 286
294 $DB_STATE = db_table "state"; 287 $DB_STATE = db_table "state";
295} 288}
296 289
297package CFPlus::Layout; 290package CFPlus::Layout;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines