Mercurial > pidgin.yaz
view licq2gaim.pl @ 4249:9c7fcb211886
[gaim-migrate @ 4499]
If anyone is curious, the commit before this fixed a bug which
didn't allow you to delete AIM or ICQ people from a deny list.
They'll show up when you sign back online, and will be deleteable
now.
This is a patch from the good Mr. McQueen.
"Twofold attack:
1) Make sure all the callback functions don't throw a mental if the gc
the dialog was asking about has disappeared. Make sure the functions
still free up the data structs as necessary in this case.
2) When setting up a ask dialog, plugins (including prpls) pass in their
handle. The ask dialog struct gets kept in a slist. When unloading a
plugin or prpl, Gaim checks the handle against the list, and sends a
cancel-type message for any outstanding dialogs.
Should avoid crashes from non-modal ask dialogs lying around."
Yeah, so that's a nice lil' improvement.
I also fixed a think where SSI "authorization denied" messages
would be gibberish. That was a bug from just a few hours ago.
Whoops.
Also, since this is like a grown up version of show and tell, I
thought this was funny:
* Robot101 fixes idiocy
<KingAnt> Does that mean I'm going to be nuetered?
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Wed, 08 Jan 2003 08:18:49 +0000 |
parents | e967c0d93930 |
children |
line wrap: on
line source
#!/usr/bin/perl -w # licq2gaim.pl # # Arturo Cisneros, Jr <acjr@hal-pc.org> # GPL'd use strict; my $DIR = "$ENV{HOME}/.licq"; my $GAIM = "$ENV{HOME}/.gaim"; my (@UINS, %USERS) = (); my $OWNER = ""; get_uins(); foreach my $uin (@UINS) { $USERS{$uin} = get_alias($uin); } get_owner(); write_list(); sub get_uins { opendir(DIR, "$DIR/users") or die "Couldn't open dir $DIR/users/: $!"; @UINS = grep !/^\./, readdir DIR; closedir(DIR); } sub get_owner { my @foo = (); open(FILE, "<$DIR/owner.uin") or die "Couldn't open file $DIR/owner.uin $!"; while(<FILE>) { next unless /^Uin/; @foo = split; last; } close(FILE); $OWNER = $foo[2]; } sub get_alias { my @foo = (); open(FILE, "<$DIR/users/$_[0]") or die "Couldn't open $DIR/users/$_[0]: $!"; while(<FILE>) { next unless /^Alias/; @foo = split / /, $_, 3; last; } close(FILE); return $foo[2]; } sub write_list { # Backup Original if( -e "$GAIM/$OWNER.3.blist") { rename("$GAIM/$OWNER.3.blist","$GAIM/$OWNER.3.bak"); } # Write new file open(FILE, ">$GAIM/$OWNER.3.blist") or die "Couldn't open file for writing: $!"; print FILE "m 1\n"; print FILE "g ICQBuddies\n"; while(my($key, $value) = each %USERS) { $key =~ s/\.uin$//; print FILE "b $key:$value"; } close(FILE); }