--- deliantra/Deliantra-Client/DC.pm 2006/04/15 22:55:59 1.35 +++ deliantra/Deliantra-Client/DC.pm 2006/04/16 07:25:29 1.37 @@ -119,7 +119,7 @@ $_[0]->db_get ($_[1], $data) == 0 ? $data - : (); + : () } my %DB_SYNC; @@ -127,10 +127,9 @@ sub put($$$) { my ($db, $key, $data) = @_; - $db->db_put ($key => $data); - $DB_SYNC{$db} = AnyEvent->timer (after => 5, cb => sub { $db->db_sync }); - + + $db->db_put ($key => $data) } package CFClient::Texture; @@ -142,7 +141,6 @@ use SDL::OpenGL; my %TEXTURES; -my @NAMES; sub new { my ($class, %data) = @_; @@ -264,7 +262,7 @@ $self->{s} = $self->{w} / $tw; $self->{t} = $self->{h} / $th; - $self->{name} ||= (pop @NAMES) || (glGenTextures 1)->[0]; + $self->{name} ||= (glGenTextures 1)->[0]; glBindTexture GL_TEXTURE_2D, $self->{name}; @@ -297,16 +295,13 @@ delete $TEXTURES{$self+0}; - if (my $name = delete $self->{name}) { - glDeleteTextures $name; - push @NAMES, $name; - } - + glDeleteTextures delete $self->{name} + if $self->{name}; } sub restore_state{ $_->upload - for grep $_, values %TEXTURES; + for values %TEXTURES; }; 1;