view po/README @ 15976:a6a79b8616bf

I commonly see a crash in which socket_ready_cb(), shortly after a laptop wakes from sleep, is passed invalid (previously freed) connect_data. It looks like this: Thread 0 Crashed: 0 libobjc.A.dylib 0x90a59380 objc_msgSend 16 1 Libgaim 0x0fe23bcd gaim_proxy_connect_data_disconnect 172 2 Libgaim 0x0fe23d63 socket_ready_cb 199 3 com.apple.CoreFoundation 0x90843ffd __CFSocketDoCallback 551 (objc_msgSend is how ObjC routes messages... it's being called because connect_data->cconnect_cb is invalid). It appears that when this crash happens, the socket is marked as ready just before the computer sleeps; on the next run loop, the callback will be called [socket_ready_cb()]. The computer sleeps and every account is disconnected first, which calls gaim_proxy_connect_cancel_with_handle(), destroying the connect_data. When it awakens, it calls socket_ready_cb() and the crash occurs. I've added PURPLE_PROXY_CONNECT_DATA_IS_VALID, which takes advantage of the fact that all valid connect_data objects are stored in the handles GSList, just as PURPLE_GAIM_CONNECTION_IS_VALID works.
author Evan Schoenberg <evan.s@dreskin.net>
date Sun, 01 Apr 2007 02:17:06 +0000
parents 5538762c5ca7
children da5c044a2437
line wrap: on
line source

Translation HowTo

We are currently very informal and very hands-off when it comes to translating Gaim. What follows is a collection of notes for those who wish to assist.

    * We try to accept tanslations for a given language only from a single person, the person we are most familiar with getting translations from. If you feel a translation is wrong, produces strings that are too long, or is badly out of date, contact the existing translator first. Work with him or her if possible. If this is not possible, mention this to us as you submit your patch or new translation.
    * Translations to new languages are always welcome.
         1. Get the po template (.pot) file from here. Alternately run intltool-update --pot in the gaim/po/ directory.
         2. Find the two letter language code for your language. If translating to a regional dialect, append the two letter region or country code. Rename the file to match this. For example, Protuguese is pt.po, and Brazilian Portuguese is pt_BR.po.
         3. Subscribe to gaim-i18n@lists.sf.net via the SF subscribe page
         4. Open the translation file you downloaded in a text editor
         5. translate the strings
                o Translated .po files may be submitted in whatever native encoding is most convenient (and hopefully canonical). Please ensure that the Content-type: line reflects the proper character set.
                o Please check your translations carefully. Make sure you have the same number of newlines and %s or other formatting codes in the translation as you have in the original. The po/check_po.pl script can help with this.
                o Before submitting updated or new translations, please run the following command to ensure the file does not contain errors: msgfmt -c --statistics xx.po
                o The comments at the top of each .po file should appear as follows:

                     # Gaim Xxxxx translation
                     # Copyright (C) 2002, Another Name <email@something.com>
                     # Copyright (C) 2003, Your Name <email@whatever.com>
                     #
                     # This file is distributed under the same license as the Gaim package.
                     #

         6. Post partial or completed files to the Translations Tracker
         7. Along with your first submission, note what name(s) and email address(es) should be put in help->about.
    * String freezes are announced on gaim-i18n



Thank you for flying Valu-Jet.