Hello community,

here is the log from the commit of package fcitx-cloudpinyin for openSUSE:12.3 
checked in at 2013-02-05 11:07:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:12.3/fcitx-cloudpinyin (Old)
 and      /work/SRC/openSUSE:12.3/.fcitx-cloudpinyin.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "fcitx-cloudpinyin", Maintainer is ""

Changes:
--------
--- /work/SRC/openSUSE:12.3/fcitx-cloudpinyin/fcitx-cloudpinyin.changes 
2013-01-31 01:16:07.000000000 +0100
+++ /work/SRC/openSUSE:12.3/.fcitx-cloudpinyin.new/fcitx-cloudpinyin.changes    
2013-02-05 11:07:38.000000000 +0100
@@ -1,0 +2,6 @@
+Sat Jan 26 18:59:30 UTC 2013 - [email protected]
+
+- update version 0.3.1
+  * update to support clean quit.
+
+-------------------------------------------------------------------

Old:
----
  fcitx-cloudpinyin-0.3.0.tar.bz2

New:
----
  fcitx-cloudpinyin-0.3.1.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ fcitx-cloudpinyin.spec ++++++
--- /var/tmp/diff_new_pack.2yWaAM/_old  2013-02-05 11:07:38.000000000 +0100
+++ /var/tmp/diff_new_pack.2yWaAM/_new  2013-02-05 11:07:38.000000000 +0100
@@ -18,7 +18,7 @@
 
 
 Name:           fcitx-cloudpinyin
-Version:        0.3.0
+Version:        0.3.1
 Release:        0
 Summary:        Cloudpinyin module for fcitx
 Group:          System/I18n/Chinese 

++++++ fcitx-cloudpinyin-0.3.0.tar.bz2 -> fcitx-cloudpinyin-0.3.1.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/.gitignore 
new/fcitx-cloudpinyin-0.3.1/.gitignore
--- old/fcitx-cloudpinyin-0.3.0/.gitignore      2012-09-12 16:00:12.000000000 
+0200
+++ new/fcitx-cloudpinyin-0.3.1/.gitignore      2013-01-25 18:55:38.000000000 
+0100
@@ -1,13 +1,13 @@
 *~
-build/*
+build*/
 .*
 !.git*
 .git/
+*.tar.*
 *.kdev4
 *.kate-swp
 *.orig
 tags
 astyle.sh
 cscope.*
-.kdev_include_paths
-.directory
+*.part
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/CMakeLists.txt 
new/fcitx-cloudpinyin-0.3.1/CMakeLists.txt
--- old/fcitx-cloudpinyin-0.3.0/CMakeLists.txt  2012-09-12 16:00:12.000000000 
+0200
+++ new/fcitx-cloudpinyin-0.3.1/CMakeLists.txt  2013-01-25 18:55:38.000000000 
+0100
@@ -2,27 +2,19 @@
 cmake_minimum_required(VERSION 2.6)
 
 set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
-find_package(Fcitx 4.2.6 REQUIRED)
+find_package(Fcitx 4.2.7 REQUIRED)
 find_package(PkgConfig REQUIRED)
-find_package(Gettext REQUIRED)
 find_package(Libintl REQUIRED)
 find_package(Libiconv REQUIRED)
 find_package(Pthread REQUIRED)
 
-# uninstall target
-configure_file(
-    "${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in"
-    "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
-    IMMEDIATE @ONLY)
+_fcitx_add_uninstall_target()
 
 set(CMAKE_C_FLAGS "-Wall -Wextra -Wno-sign-compare -Wno-unused-parameter 
-fvisibility=hidden ${CMAKE_C_FLAGS}")
 set(CMAKE_CXX_FLAGS "-Wall -Wextra -Wno-sign-compare -Wno-unused-parameter 
-fvisibility=hidden ${CMAKE_CXX_FLAGS}")
 set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--as-needed ${CMAKE_SHARED_LINKER_FLAGS}")
 set(CMAKE_MODULE_LINKER_FLAGS "-Wl,--as-needed ${CMAKE_MODULE_LINKER_FLAGS}")
 
-add_custom_target(uninstall
-    COMMAND ${CMAKE_COMMAND} -P 
${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake)
-
 pkg_check_modules(CURL "libcurl" REQUIRED)
 
 set(LOCALEDIR "${CMAKE_INSTALL_PREFIX}/share/locale")
@@ -31,6 +23,6 @@
 
 enable_testing()
 
-add_subdirectory(src)
 add_subdirectory(po)
-add_subdirectory(test)
\ No newline at end of file
+add_subdirectory(src)
+add_subdirectory(test)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/COPYING 
new/fcitx-cloudpinyin-0.3.1/COPYING
--- old/fcitx-cloudpinyin-0.3.0/COPYING 2012-09-12 16:00:12.000000000 +0200
+++ new/fcitx-cloudpinyin-0.3.1/COPYING 2013-01-25 18:55:38.000000000 +0100
@@ -2,7 +2,7 @@
                       Version 2, June 1991
 
  Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+     51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
@@ -305,7 +305,7 @@
 
     You should have received a copy of the GNU General Public License
     along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
 
 
 Also add information on how to contact you by electronic and paper mail.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/README 
new/fcitx-cloudpinyin-0.3.1/README
--- old/fcitx-cloudpinyin-0.3.0/README  2012-09-12 16:00:12.000000000 +0200
+++ new/fcitx-cloudpinyin-0.3.1/README  2013-01-25 18:55:38.000000000 +0100
@@ -1,4 +1 @@
-this is a standalone module for fcitx, it can use pinyin API on the internet
-to input.
-
-Requires Fcitx 4.1.0 (Currently is not released).
+Fcitx-Cloudpinyin is a standalone module for fcitx that uses web API to 
provide better pinyin result.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/cmake/FindLibintl.cmake 
new/fcitx-cloudpinyin-0.3.1/cmake/FindLibintl.cmake
--- old/fcitx-cloudpinyin-0.3.0/cmake/FindLibintl.cmake 2012-09-12 
16:00:12.000000000 +0200
+++ new/fcitx-cloudpinyin-0.3.1/cmake/FindLibintl.cmake 2013-01-25 
18:55:38.000000000 +0100
@@ -9,38 +9,39 @@
 # present in libc. Must have more robust system for release, where Gettext
 # functionality can also reside in standalone Gettext library, or the one
 # embedded within kdelibs (cf. gettext.m4 from Gettext source).
- 
+
 # Copyright (c) 2006, Chusslove Illich, <[email protected]>
 # Copyright (c) 2007, Alexander Neundorf, <[email protected]>
 #
 # Redistribution and use is allowed according to the terms of the BSD license.
 # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
- 
+
 if(LIBINTL_INCLUDE_DIR AND LIBINTL_LIB_FOUND)
   set(Libintl_FIND_QUIETLY TRUE)
-endif(LIBINTL_INCLUDE_DIR AND LIBINTL_LIB_FOUND)
- 
+endif()
+
 find_path(LIBINTL_INCLUDE_DIR libintl.h)
- 
+
 set(LIBINTL_LIB_FOUND FALSE)
- 
+
 if(LIBINTL_INCLUDE_DIR)
   include(CheckFunctionExists)
   check_function_exists(dgettext LIBINTL_LIBC_HAS_DGETTEXT)
- 
-  if (LIBINTL_LIBC_HAS_DGETTEXT)
+
+  if(LIBINTL_LIBC_HAS_DGETTEXT)
     set(LIBINTL_LIBRARIES)
     set(LIBINTL_LIB_FOUND TRUE)
-  else (LIBINTL_LIBC_HAS_DGETTEXT)
-    find_library(LIBINTL_LIBRARIES NAMES intl libintl )
+  else()
+    find_library(LIBINTL_LIBRARIES NAMES intl libintl)
     if(LIBINTL_LIBRARIES)
       set(LIBINTL_LIB_FOUND TRUE)
-    endif(LIBINTL_LIBRARIES)
-  endif (LIBINTL_LIBC_HAS_DGETTEXT)
- 
+    endif()
+  endif()
 endif(LIBINTL_INCLUDE_DIR)
- 
+
 include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(Libintl  DEFAULT_MSG  LIBINTL_INCLUDE_DIR  
LIBINTL_LIB_FOUND)
- 
-mark_as_advanced(LIBINTL_INCLUDE_DIR  LIBINTL_LIBRARIES  
LIBINTL_LIBC_HAS_DGETTEXT  LIBINTL_LIB_FOUND)
\ No newline at end of file
+find_package_handle_standard_args(Libintl DEFAULT_MSG LIBINTL_INCLUDE_DIR
+  LIBINTL_LIB_FOUND)
+
+mark_as_advanced(LIBINTL_INCLUDE_DIR LIBINTL_LIBRARIES
+  LIBINTL_LIBC_HAS_DGETTEXT LIBINTL_LIB_FOUND)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/po/CMakeLists.txt 
new/fcitx-cloudpinyin-0.3.1/po/CMakeLists.txt
--- old/fcitx-cloudpinyin-0.3.0/po/CMakeLists.txt       2012-09-12 
16:00:12.000000000 +0200
+++ new/fcitx-cloudpinyin-0.3.1/po/CMakeLists.txt       2013-01-25 
18:55:38.000000000 +0100
@@ -1,23 +1,5 @@
-file(GLOB PO_FILES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.po)
-file(RELATIVE_PATH REL_SOURCE_ROOT ${PROJECT_BINARY_DIR} ${PROJECT_SOURCE_DIR})
-if ("${REL_SOURCE_ROOT}" STREQUAL "")
-    set(REL_SOURCE_ROOT ".")
-endif("${REL_SOURCE_ROOT}" STREQUAL "")
-
-set(POT_FILE fcitx-cloudpinyin.pot)
-
-configure_file(POTFILES.in.in ${CMAKE_CURRENT_BINARY_DIR}/POTFILES.in)
-
-extract_fcitx_addon_conf_postring()
-extract_fcitx_desc_file_postring()
-
-add_custom_target(
-    pot
-    COMMAND INTLTOOL_EXTRACT=${INTLTOOL_EXTRACT} 
srcdir=${CMAKE_CURRENT_BINARY_DIR} ${INTLTOOL_UPDATE} --gettext-package 
fcitx-cloudpinyin --pot
-    WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
-    DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/conf.po 
${CMAKE_CURRENT_BINARY_DIR}/desc.po
-    )
-
-# Update .po files and compile them to binary .gmo files
-gettext_create_translations(${POT_FILE} ALL ${PO_FILES})
-
+set(PO_LANGS zh_CN zh_TW)
+foreach(lang ${PO_LANGS})
+  fcitx_translate_add_po_file("${lang}" "${lang}.po")
+endforeach()
+fcitx_translate_set_pot_target(pot fcitx-cloudpinyin fcitx-cloudpinyin.pot)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/po/POTFILES.in.in 
new/fcitx-cloudpinyin-0.3.1/po/POTFILES.in.in
--- old/fcitx-cloudpinyin-0.3.0/po/POTFILES.in.in       2012-09-12 
16:00:12.000000000 +0200
+++ new/fcitx-cloudpinyin-0.3.1/po/POTFILES.in.in       1970-01-01 
01:00:00.000000000 +0100
@@ -1,5 +0,0 @@
-# List of source files which contain translatable strings.
-./po/desc.po
-./po/conf.po
-@REL_SOURCE_ROOT@/src/cloudpinyin.c
-@REL_SOURCE_ROOT@/src/fcitx-cloudpinyin.conf.in
\ No newline at end of file
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/po/fcitx-cloudpinyin.pot 
new/fcitx-cloudpinyin-0.3.1/po/fcitx-cloudpinyin.pot
--- old/fcitx-cloudpinyin-0.3.0/po/fcitx-cloudpinyin.pot        2012-09-12 
16:00:12.000000000 +0200
+++ new/fcitx-cloudpinyin-0.3.1/po/fcitx-cloudpinyin.pot        2013-01-25 
18:55:38.000000000 +0100
@@ -7,60 +7,61 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-08-29 18:07-0400\n"
+"Report-Msgid-Bugs-To: [email protected]\n"
+"POT-Creation-Date: 2012-12-01 18:57-0500\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <[email protected]>\n"
-"Language: \n"
+"Language: LANG\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:5
-msgid "Cloud Pinyin Candidate Word Order"
+#: src/cloudpinyin.c:607
+msgid " (via cloud)"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:11
-msgid "Minimum Length of Pinyin To Trigger Cloud Pinyin"
+#: src/fcitx-cloudpinyin.conf.in:3
+msgid "Cloud Pinyin"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:16
-msgid "Don't Show the 'via cloud' hint"
+#: src/fcitx-cloudpinyin.conf.in:4
+msgid "Add Cloud Pinyin Support to Pinyin Input Method"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:21
-msgid "Cloud Pinyin Source"
+#: src/fcitx-cloudpinyin.desc:1 src/fcitx-cloudpinyin.desc:7
+#: src/fcitx-cloudpinyin.desc:13 src/fcitx-cloudpinyin.desc:18
+msgid "CloudPinyin"
 msgstr ""
 
-# unknown
-msgid "CloudPinyin"
+#: src/fcitx-cloudpinyin.desc:5
+msgid "Cloud Pinyin Candidate Word Order"
 msgstr ""
 
-#: unknown
-msgid "Baidu"
+#: src/fcitx-cloudpinyin.desc:11
+msgid "Minimum Length of Pinyin To Trigger Cloud Pinyin"
 msgstr ""
 
-#: unknown
-msgid "Google"
+#: src/fcitx-cloudpinyin.desc:16
+msgid "Don't Show the 'via cloud' hint"
 msgstr ""
 
-#: unknown
-msgid "QQ"
+#: src/fcitx-cloudpinyin.desc:21
+msgid "Cloud Pinyin Source"
 msgstr ""
 
-#: unknown
+#: src/fcitx-cloudpinyin.desc:23
 msgid "Sogou"
 msgstr ""
 
-#: 
/home/saber/Develop/fcitx-cloudpinyin/build/po/tmp/fcitx-cloudpinyin.conf.in.h:1
-msgid "Cloud Pinyin"
+#: src/fcitx-cloudpinyin.desc:24
+msgid "QQ"
 msgstr ""
 
-#: 
/home/saber/Develop/fcitx-cloudpinyin/build/po/tmp/fcitx-cloudpinyin.conf.in.h:2
-msgid "Add Cloud Pinyin Support to Pinyin Input Method"
+#: src/fcitx-cloudpinyin.desc:25
+msgid "Google"
 msgstr ""
 
-#: /home/saber/Develop/fcitx-cloudpinyin/build/po/../..//src/cloudpinyin.c:588
-msgid " (via cloud)"
+#: src/fcitx-cloudpinyin.desc:26
+msgid "Baidu"
 msgstr ""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/po/zh_CN.po 
new/fcitx-cloudpinyin-0.3.1/po/zh_CN.po
--- old/fcitx-cloudpinyin-0.3.0/po/zh_CN.po     2012-09-12 16:00:12.000000000 
+0200
+++ new/fcitx-cloudpinyin-0.3.1/po/zh_CN.po     2013-01-25 18:55:38.000000000 
+0100
@@ -1,70 +1,69 @@
 # SOME DESCRIPTIVE TITLE.
 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
-#
+# 
 # Translators:
+# Christopher Meng <[email protected]>, 2012.
 # Weng Xuetian <[email protected]>, 2011.
 msgid ""
 msgstr ""
 "Project-Id-Version: fcitx\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-08-29 18:07-0400\n"
-"PO-Revision-Date: 2012-08-29 20:00-0400\n"
-"Last-Translator: Yichao Yu <[email protected]>\n"
+"Report-Msgid-Bugs-To: [email protected]\n"
+"POT-Creation-Date: 2012-12-01 18:57-0500\n"
+"PO-Revision-Date: 2012-09-02 06:46+0000\n"
+"Last-Translator: Xuetian Weng <[email protected]>\n"
 "Language-Team: Chinese (China) <[email protected]>\n"
-"Language: zh_CN\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Language: zh_CN\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
-#: /home/saber/Develop/fcitx-cloudpinyin/build/po/../..//src/cloudpinyin.c:588
+#: src/cloudpinyin.c:607
 msgid " (via cloud)"
 msgstr " (来自云)"
 
-#: 
/home/saber/Develop/fcitx-cloudpinyin/build/po/tmp/fcitx-cloudpinyin.conf.in.h:2
+#: src/fcitx-cloudpinyin.conf.in:3
+msgid "Cloud Pinyin"
+msgstr "云拼音"
+
+#: src/fcitx-cloudpinyin.conf.in:4
 msgid "Add Cloud Pinyin Support to Pinyin Input Method"
 msgstr "为拼音输入法加入云拼音支持"
 
-#: unknown
-msgid "Baidu"
-msgstr "百度"
-
-#: 
/home/saber/Develop/fcitx-cloudpinyin/build/po/tmp/fcitx-cloudpinyin.conf.in.h:1
-msgid "Cloud Pinyin"
+#: src/fcitx-cloudpinyin.desc:1 src/fcitx-cloudpinyin.desc:7
+#: src/fcitx-cloudpinyin.desc:13 src/fcitx-cloudpinyin.desc:18
+msgid "CloudPinyin"
 msgstr "云拼音"
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:5
+#: src/fcitx-cloudpinyin.desc:5
 msgid "Cloud Pinyin Candidate Word Order"
 msgstr "云拼音候选词顺序"
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:21
-msgid "Cloud Pinyin Source"
-msgstr "云拼音来源"
-
-# unknown
-msgid "CloudPinyin"
-msgstr "云拼音"
+#: src/fcitx-cloudpinyin.desc:11
+msgid "Minimum Length of Pinyin To Trigger Cloud Pinyin"
+msgstr "最小触发云拼音的拼音长度"
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:16
+#: src/fcitx-cloudpinyin.desc:16
 msgid "Don't Show the 'via cloud' hint"
 msgstr "不显示‘来自云’提示"
 
-#: unknown
-msgid "Google"
-msgstr "Google"
+#: src/fcitx-cloudpinyin.desc:21
+msgid "Cloud Pinyin Source"
+msgstr "云拼音来源"
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:11
-msgid "Minimum Length of Pinyin To Trigger Cloud Pinyin"
-msgstr "最小触发云拼音的拼音长度"
+#: src/fcitx-cloudpinyin.desc:23
+msgid "Sogou"
+msgstr "搜狗"
 
-#: unknown
+#: src/fcitx-cloudpinyin.desc:24
 msgid "QQ"
 msgstr "QQ"
 
-#: unknown
-msgid "Sogou"
-msgstr "搜狗"
+#: src/fcitx-cloudpinyin.desc:25
+msgid "Google"
+msgstr "Google"
 
-#~ msgid "Only use origin Pinyin to query the result"
-#~ msgstr "只使用原始拼音查询结果"
+#: src/fcitx-cloudpinyin.desc:26
+msgid "Baidu"
+msgstr "百度"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/po/zh_TW.po 
new/fcitx-cloudpinyin-0.3.1/po/zh_TW.po
--- old/fcitx-cloudpinyin-0.3.0/po/zh_TW.po     2012-09-12 16:00:12.000000000 
+0200
+++ new/fcitx-cloudpinyin-0.3.1/po/zh_TW.po     2013-01-25 18:55:38.000000000 
+0100
@@ -1,71 +1,69 @@
 # SOME DESCRIPTIVE TITLE.
 # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
 # This file is distributed under the same license as the PACKAGE package.
-#
+# 
 # Translators:
+#   <[email protected]>, 2012.
 # Alisha <[email protected]>, 2012.
 msgid ""
 msgstr ""
 "Project-Id-Version: fcitx\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-08-29 18:07-0400\n"
-"PO-Revision-Date: 2012-01-26 16:05+0000\n"
+"Report-Msgid-Bugs-To: [email protected]\n"
+"POT-Creation-Date: 2012-12-01 18:57-0500\n"
+"PO-Revision-Date: 2012-09-11 00:12+0000\n"
 "Last-Translator: Alisha <[email protected]>\n"
-"Language-Team: Chinese (Taiwan) (http://www.transifex.net/projects/p/fcitx/";
-"language/zh_TW/)\n"
-"Language: zh_TW\n"
+"Language-Team: Chinese (Taiwan) 
(http://www.transifex.com/projects/p/fcitx/language/zh_TW/)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0\n"
+"Language: zh_TW\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
 
-#: /home/saber/Develop/fcitx-cloudpinyin/build/po/../..//src/cloudpinyin.c:588
+#: src/cloudpinyin.c:607
 msgid " (via cloud)"
 msgstr "(來自雲)"
 
-#: 
/home/saber/Develop/fcitx-cloudpinyin/build/po/tmp/fcitx-cloudpinyin.conf.in.h:2
+#: src/fcitx-cloudpinyin.conf.in:3
+msgid "Cloud Pinyin"
+msgstr "雲拼音"
+
+#: src/fcitx-cloudpinyin.conf.in:4
 msgid "Add Cloud Pinyin Support to Pinyin Input Method"
 msgstr "為拼音輸入法加入雲拼音支援"
 
-#: unknown
-msgid "Baidu"
-msgstr ""
-
-#: 
/home/saber/Develop/fcitx-cloudpinyin/build/po/tmp/fcitx-cloudpinyin.conf.in.h:1
-msgid "Cloud Pinyin"
+#: src/fcitx-cloudpinyin.desc:1 src/fcitx-cloudpinyin.desc:7
+#: src/fcitx-cloudpinyin.desc:13 src/fcitx-cloudpinyin.desc:18
+msgid "CloudPinyin"
 msgstr "雲拼音"
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:5
+#: src/fcitx-cloudpinyin.desc:5
 msgid "Cloud Pinyin Candidate Word Order"
 msgstr "雲拼音候選字順序"
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:21
-msgid "Cloud Pinyin Source"
-msgstr "雲拼音來源"
-
-# unknown
-msgid "CloudPinyin"
-msgstr "雲拼音"
+#: src/fcitx-cloudpinyin.desc:11
+msgid "Minimum Length of Pinyin To Trigger Cloud Pinyin"
+msgstr "最小觸發雲拼音的拼音長度"
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:16
+#: src/fcitx-cloudpinyin.desc:16
 msgid "Don't Show the 'via cloud' hint"
 msgstr "不顯示「來自雲」提示"
 
-#: unknown
-msgid "Google"
-msgstr "Google"
+#: src/fcitx-cloudpinyin.desc:21
+msgid "Cloud Pinyin Source"
+msgstr "雲拼音來源"
 
-#: /home/saber/Develop/fcitx-cloudpinyin/src/fcitx-cloudpinyin.desc:11
-msgid "Minimum Length of Pinyin To Trigger Cloud Pinyin"
-msgstr "最小觸發雲拼音的拼音長度"
+#: src/fcitx-cloudpinyin.desc:23
+msgid "Sogou"
+msgstr "搜狗"
 
-#: unknown
+#: src/fcitx-cloudpinyin.desc:24
 msgid "QQ"
 msgstr "QQ"
 
-#: unknown
-msgid "Sogou"
-msgstr "搜狗"
+#: src/fcitx-cloudpinyin.desc:25
+msgid "Google"
+msgstr "Google"
 
-#~ msgid "Only use origin Pinyin to query the result"
-#~ msgstr "只使用原始拼音查詢結果"
+#: src/fcitx-cloudpinyin.desc:26
+msgid "Baidu"
+msgstr "百度"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/src/CMakeLists.txt 
new/fcitx-cloudpinyin-0.3.1/src/CMakeLists.txt
--- old/fcitx-cloudpinyin-0.3.0/src/CMakeLists.txt      2012-09-12 
16:00:12.000000000 +0200
+++ new/fcitx-cloudpinyin-0.3.1/src/CMakeLists.txt      2013-01-25 
18:55:38.000000000 +0100
@@ -1,31 +1,27 @@
 include_directories(
-    ${PROJECT_BINARY_DIR}
-    ${CMAKE_CURRENT_SOURCE_DIR}
-    ${CURL_INCLUDE_DIRS}
-    ${PTHREAD_INCLUDE_DIR}
-    ${FCITX4_FCITX_INCLUDE_DIRS}
-    ${FCITX4_FCITX_CONFIG_INCLUDE_DIRS}
-    ${FCITX4_FCITX_UTILS_INCLUDE_DIRS}
-    ${LIBINTL_INCLUDE_DIR}
-)
+  ${PROJECT_BINARY_DIR}
+  ${CMAKE_CURRENT_SOURCE_DIR}
+  ${CURL_INCLUDE_DIRS}
+  ${PTHREAD_INCLUDE_DIR}
+  ${FCITX4_FCITX_INCLUDE_DIRS}
+  ${FCITX4_FCITX_CONFIG_INCLUDE_DIRS}
+  ${FCITX4_FCITX_UTILS_INCLUDE_DIRS}
+  ${LIBINTL_INCLUDE_DIR}
+  )
 
 link_directories(
-    ${CURL_LIBRARY_DIRS}
-)
+  ${CURL_LIBRARY_DIRS}
+  )
 
 set(FCITX_CLOUDPINYIN_SRCS
-    cloudpinyin.c
-    cloudpinyinconifg.c
-    fetch.c
-    parse.c
-)
+  cloudpinyin.c
+  cloudpinyinconifg.c
+  fetch.c
+  parse.c
+  )
 
-fcitx_add_addon(fcitx-cloudpinyin ${FCITX_CLOUDPINYIN_SRCS})
-target_link_libraries( fcitx-cloudpinyin
-                       ${CURL_LIBRARIES}
-                       ${LIBINTL_LIBRARIES}
-                       ${PTHREAD_LIBRARIES}
-                       )
-
-fcitx_add_addon_conf_file(fcitx-cloudpinyin.conf)
-fcitx_add_configdesc_file(fcitx-cloudpinyin.desc)
+fcitx_add_addon_full(cloudpinyin DESC
+  SOURCES ${FCITX_CLOUDPINYIN_SRCS}
+  LINK_LIBS ${CURL_LIBRARIES}
+  ${LIBINTL_LIBRARIES}
+  ${PTHREAD_LIBRARIES})
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/src/cloudpinyin.c 
new/fcitx-cloudpinyin-0.3.1/src/cloudpinyin.c
--- old/fcitx-cloudpinyin-0.3.0/src/cloudpinyin.c       2012-09-12 
16:00:12.000000000 +0200
+++ new/fcitx-cloudpinyin-0.3.1/src/cloudpinyin.c       2013-01-25 
18:55:38.000000000 +0100
@@ -33,13 +33,23 @@
 #include <fcitx-utils/log.h>
 #include <fcitx/candidate.h>
 #include <fcitx-config/xdg.h>
-#include <fcitx/module/pinyin/pydef.h>
+#include <fcitx/module/pinyin/fcitx-pinyin.h>
 
 #include "cloudpinyin.h"
 #include "fetch.h"
 #include "parse.h"
 
-#define CHECK_VALID_IM (im && \
+DEFINE_GET_ADDON("fcitx-sunpinyin", SunPinyin)
+DEFINE_GET_ADDON("fcitx-libpinyin", LibPinyin)
+DEFINE_GET_ADDON("fcitx-sogoupinyin", SogouPinyin)
+DEFINE_GET_AND_INVOKE_FUNC(SunPinyin, GetFullPinyin, 0)
+DEFINE_GET_AND_INVOKE_FUNC(SunPinyin, AddWord, 1)
+
+// Maybe not the right name, but doesn't matter....
+DEFINE_GET_AND_INVOKE_FUNC(LibPinyin, AddWord, 0)
+DEFINE_GET_AND_INVOKE_FUNC(SogouPinyin, AddWord, 0)
+
+#define CHECK_VALID_IM (im &&                                 \
                         strcmp(im->langCode, "zh_CN") == 0 && \
                         (strcmp(im->uniqueName, "pinyin") == 0 || \
                         strcmp(im->uniqueName, "pinyin-libpinyin") == 0 || \
@@ -51,8 +61,6 @@
 
 #define CLOUDPINYIN_CHECK_PAGE_NUMBER 3
 
-#define LOGLEVEL DEBUG
-
 typedef struct _CloudCandWord {
     boolean filled;
     uint64_t timestamp;
@@ -151,8 +159,7 @@
     } else {
         FcitxMessagesAddMessageAtLast(message, MSG_INPUT, "%s", str);
     }
-    if (string)
-        free(string);
+    fcitx_utils_free(string);
     FcitxInstanceUpdateClientSideUI(
         cloudpinyin->owner, FcitxInstanceGetCurrentIC(cloudpinyin->owner));
 }
@@ -279,7 +286,7 @@
 
             if (inputString) {
                 CloudPinyinCache* cacheEntry = 
CloudPinyinCacheLookup(cloudpinyin, inputString);
-                FcitxLog(LOGLEVEL, "%s", inputString);
+                FcitxLog(DEBUG, "%s", inputString);
                 if (cacheEntry == NULL)
                     CloudPinyinAddInputRequest(cloudpinyin, inputString);
                 _CloudPinyinAddCandidateWord(cloudpinyin, inputString);
@@ -347,13 +354,19 @@
 void CloudPinyinProcessEvent(void* arg)
 {
     FcitxCloudPinyin* cloudpinyin = (FcitxCloudPinyin*) arg;
+    FcitxInstance* instance = cloudpinyin->owner;
+    if (!FD_ISSET(cloudpinyin->pipeRecv, FcitxInstanceGetReadFDSet(instance)))
+        return;
+
     char c;
     while (read(cloudpinyin->pipeRecv, &c, sizeof(char)) > 0);
     pthread_mutex_lock(&cloudpinyin->finishQueueLock);
     CurlQueue* queue;
     queue = cloudpinyin->finishQueue;
+    /* this queue header is empty, so the check condition is "next" not null */
     while (queue->next != NULL)
     {
+        /* remove pivot from queue, thus pivot need to be free'd in 
HandleRequest */
         CurlQueue* pivot = queue->next;
         queue->next = queue->next->next;
         CloudPinyinHandleRequest(cloudpinyin, pivot);
@@ -363,7 +376,48 @@
 
 void CloudPinyinDestroy(void* arg)
 {
+    FcitxCloudPinyin* cloudpinyin = (FcitxCloudPinyin*) arg;
+    char c = 1;
+    write(cloudpinyin->pipeNotify, &c, sizeof(char));
+    pthread_join(cloudpinyin->pid, NULL);
+    pthread_mutex_destroy(&cloudpinyin->pendingQueueLock);
+    pthread_mutex_destroy(&cloudpinyin->finishQueueLock);
+    while (cloudpinyin->cache)
+    {
+        CloudPinyinCache* head = cloudpinyin->cache;
+        HASH_DEL(cloudpinyin->cache, cloudpinyin->cache);
+        free(head->pinyin);
+        free(head->str);
+        free(head);
+    }
 
+    close(cloudpinyin->pipeRecv);
+    close(cloudpinyin->pipeNotify);
+
+    close(cloudpinyin->fetch->pipeRecv);
+    close(cloudpinyin->fetch->pipeNotify);
+    int i = 0;
+    for (i = 0; i < MAX_HANDLE; i ++) {
+        if (cloudpinyin->freeList[i].curl) {
+            curl_easy_cleanup(cloudpinyin->freeList[i].curl);
+        }
+    }
+
+    curl_multi_cleanup(cloudpinyin->fetch->curlm);
+#define _FREE_QUEUE(NAME) \
+    while(NAME) { \
+        CurlQueue* queue = NAME; \
+        NAME = NAME->next; \
+        fcitx_utils_free(queue->str); \
+        fcitx_utils_free(queue->pinyin); \
+        free(queue); \
+    }
+    _FREE_QUEUE(cloudpinyin->pendingQueue)
+    _FREE_QUEUE(cloudpinyin->finishQueue)
+    _FREE_QUEUE(cloudpinyin->fetch->queue)
+    FcitxConfigFree(&cloudpinyin->config.config);
+    free(cloudpinyin->fetch);
+    free(cloudpinyin);
 }
 
 void CloudPinyinReloadConfig(void* arg)
@@ -445,7 +499,7 @@
                 strToFree = GetCurrentString(cloudpinyin, &inputString);
 
                 if (inputString) {
-                    FcitxLog(LOGLEVEL, "fill: %s %s", inputString, 
queue->pinyin);
+                    FcitxLog(DEBUG, "fill: %s %s", inputString, queue->pinyin);
                     if (strcmp(inputString, queue->pinyin) == 0)
                     {
                         if (CHECK_VALID_IM)
@@ -472,10 +526,8 @@
         }
     }
     CloudPinyinReleaseCurlHandle(cloudpinyin, queue->curl);
-    if (queue->str)
-        free(queue->str);
-    if (queue->pinyin)
-        free(queue->pinyin);
+    fcitx_utils_free(queue->str);
+    fcitx_utils_free(queue->pinyin);
     free(queue);
 }
 
@@ -692,25 +744,25 @@
         if (py) {
             *py = 0;
 
-            snprintf(FcitxInputStateGetOutputString(input), MAX_USER_INPUT, 
"%s%s", string, candWord->strWord);
+            snprintf(FcitxInputStateGetOutputString(input),
+                     MAX_USER_INPUT, "%s%s", string, candWord->strWord);
 
             FcitxIM* im = FcitxInstanceGetCurrentIM(cloudpinyin->owner);
-            FcitxModuleFunctionArg args;
-            args.args[0] = FcitxInputStateGetOutputString(input);
-            if (im)
-            {
-                if (strcmp(im->uniqueName, "sunpinyin") == 0)
-                    FcitxModuleInvokeFunctionByName(cloudpinyin->owner, 
"fcitx-sunpinyin", 1, args);
-                else if (strcmp(im->uniqueName, "shuangpin") == 0 || 
strcmp(im->uniqueName, "pinyin") == 0)
-                    FcitxModuleInvokeFunctionByName(cloudpinyin->owner, 
"fcitx-pinyin", 7, args);
-                else if (strcmp(im->uniqueName, "pinyin-libpinyin") == 0 ||
-                         strcmp(im->uniqueName, "shuangpin-libpinyin") == 0)
-                {
-                    FcitxModuleInvokeFunctionByName(cloudpinyin->owner, 
"fcitx-libpinyin", 0, args);
+            if (im) {
+                char *output_string = FcitxInputStateGetOutputString(input);
+                FCITX_DEF_MODULE_ARGS(args, output_string);
+                if (strcmp(im->uniqueName, "sunpinyin") == 0) {
+                    FcitxSunPinyinInvokeAddWord(cloudpinyin->owner, args);
+                } else if (strcmp(im->uniqueName, "shuangpin") == 0 ||
+                           strcmp(im->uniqueName, "pinyin") == 0) {
+                    FcitxPinyinInvokeAddUserPhrase(cloudpinyin->owner, args);
+                } else if (strcmp(im->uniqueName, "pinyin-libpinyin") == 0 ||
+                           strcmp(im->uniqueName, "shuangpin-libpinyin") == 0) 
{
+                    FcitxLibPinyinInvokeAddWord(cloudpinyin->owner, args);
                 }
                 else if (strcmp(im->uniqueName, "sogou-pinyin") == 0)
                 {
-                    FcitxModuleInvokeFunctionByName(cloudpinyin->owner, 
"fcitx-sogoupinyin", 0, args);
+                    FcitxSogouPinyinInvokeAddWord(cloudpinyin->owner, args);
                 }
             }
         }
@@ -789,17 +841,14 @@
 
             if (*lastpos != '\0') {
                 char* result = NULL;
-                FcitxModuleFunctionArg arg;
-                arg.args[0] = lastpos;
                 boolean isshuangpin = false;
                 if (strcmp(im->uniqueName, "sunpinyin") == 0) {
-                    boolean issp = false;
-                    arg.args[1] = &issp;
-                    result = 
FcitxModuleInvokeFunctionByName(cloudpinyin->owner, "fcitx-sunpinyin", 0, arg);
-                    isshuangpin = issp;
+                    FCITX_DEF_MODULE_ARGS(args, lastpos, &isshuangpin);
+                    result = FcitxSunPinyinInvokeGetFullPinyin(
+                        cloudpinyin->owner, args);
                 } else if (strcmp(im->uniqueName, "shuangpin") == 0) {
                     isshuangpin = true;
-                    result = InvokeFunction(cloudpinyin->owner, FCITX_PINYIN, 
SP2QP, arg);
+                    result = FcitxPinyinSP2QP(cloudpinyin->owner, lastpos);
                 }
                 if (isshuangpin) {
                     if (result) {
@@ -822,11 +871,9 @@
                     }
                 }
             }
-
             lastpos = pinyin + 1;
         }
         pinyin ++;
-
     } while(endflag);
     free(string);
     /* no pinyin append, return NULL for off it */
@@ -846,10 +893,8 @@
     const char* ime_patch_key = "ime_patch_key = \"";
     size_t len = strlen(str);
     if (len == SOGOU_KEY_LENGTH + strlen(ime_patch_key) + 1
-            && strncmp(str, ime_patch_key, strlen(ime_patch_key)) == 0
-            && str[len - 1] == '\"'
-        )
-    {
+        && strncmp(str, ime_patch_key, strlen(ime_patch_key)) == 0
+        && str[len - 1] == '\"') {
         sscanf(str,"ime_patch_key = \"%s\"", cloudpinyin->key);
         cloudpinyin->initialized = true;
         cloudpinyin->key[SOGOU_KEY_LENGTH] = '\0';
@@ -861,8 +906,7 @@
 void CloudPinyinHookForNewRequest(void* arg)
 {
     FcitxCloudPinyin* cloudpinyin = (FcitxCloudPinyin*) arg;
-    if (!cloudpinyin->initialized && !cloudpinyin->isrequestkey)
-    {
+    if (!cloudpinyin->initialized && !cloudpinyin->isrequestkey) {
         CloudPinyinRequestKey(cloudpinyin);
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fcitx-cloudpinyin-0.3.0/src/fetch.c 
new/fcitx-cloudpinyin-0.3.1/src/fetch.c
--- old/fcitx-cloudpinyin-0.3.0/src/fetch.c     2012-09-12 16:00:12.000000000 
+0200
+++ new/fcitx-cloudpinyin-0.3.1/src/fetch.c     2013-01-25 18:55:38.000000000 
+0100
@@ -43,9 +43,14 @@
     curl_multi_setopt(fetch->curlm, CURLMOPT_MAXCONNECTS, MAX_HANDLE);
 
     while (true) {
-
+        boolean endflag = false;
         char c;
-        while (read(fetch->pipeRecv, &c, sizeof(char)) > 0);
+        while (read(fetch->pipeRecv, &c, sizeof(char)) > 0) {
+            if (c == 1)
+                endflag = true;
+        }
+        if (endflag)
+            break;
 
         FetchProcessPendingRequest(fetch);
         FetchProcessEvent(fetch);

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to