Re: [REVIEW:3-5] fdo#48023 fix RTF import of Russian characters without an encoding specified

2012-04-24 Thread Caolán McNamara
On Tue, 2012-04-24 at 14:49 +0200, Miklos Vajna wrote:
 Hi,
 
 See
 http://cgit.freedesktop.org/libreoffice/core/commit/?id=f8bda24

Can you merge that with (the equally horrible equivalent and partial
hack) in ww8par.cxx (search for LANGUAGE_RUSSIAN) and put it someplace
shared ?

C.

___
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


Re: [REVIEW:3-5] fdo#48023 fix RTF import of Russian characters without an encoding specified

2012-04-24 Thread Miklos Vajna
On Tue, Apr 24, 2012 at 02:15:53PM +0100, Caolán McNamara caol...@redhat.com 
wrote:
 Can you merge that with (the equally horrible equivalent and partial
 hack) in ww8par.cxx (search for LANGUAGE_RUSSIAN) and put it someplace
 shared ?

Sure - does the attached patch looks sane? It definitely works with my
Russian test RTF doc, the ww8 part is only compile-tested.

If yes, then I would go with that in master, and have the originally
proposed smaller change in -3-5.

Miklos
From 0988800a28ff7255ed99e37f6ecf626cea4539e0 Mon Sep 17 00:00:00 2001
From: Miklos Vajna vmik...@suse.cz
Date: Tue, 24 Apr 2012 17:35:40 +0200
Subject: [PATCH] msfilter::util: avoid code duplication by merging from sw
 and writerfilter

---
 filter/Library_msfilter.mk |1 +
 filter/Package_inc.mk  |1 +
 filter/inc/filter/msfilter/util.hxx|   46 
 filter/source/msfilter/util.cxx|   55 
 sw/source/filter/ww8/ww8par.cxx|   27 +---
 writerfilter/Library_rtftok.mk |1 +
 writerfilter/source/rtftok/rtfdocumentimpl.cxx |   16 +--
 7 files changed, 108 insertions(+), 39 deletions(-)
 create mode 100644 filter/inc/filter/msfilter/util.hxx
 create mode 100644 filter/source/msfilter/util.cxx

diff --git a/filter/Library_msfilter.mk b/filter/Library_msfilter.mk
index e2e5eb2..979abd7 100644
--- a/filter/Library_msfilter.mk
+++ b/filter/Library_msfilter.mk
@@ -71,6 +71,7 @@ $(eval $(call gb_Library_add_exception_objects,msfilter,\
 	filter/source/msfilter/services \
 	filter/source/msfilter/svdfppt \
 	filter/source/msfilter/svxmsbas2 \
+	filter/source/msfilter/util \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/filter/Package_inc.mk b/filter/Package_inc.mk
index 27a6c45..2b113f1 100644
--- a/filter/Package_inc.mk
+++ b/filter/Package_inc.mk
@@ -30,5 +30,6 @@ $(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/mstoolbar.hxx,f
 $(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/msvbahelper.hxx,filter/msfilter/msvbahelper.hxx))
 $(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/svdfppt.hxx,filter/msfilter/svdfppt.hxx))
 $(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/svxmsbas.hxx,filter/msfilter/svxmsbas.hxx))
+$(eval $(call gb_Package_add_file,filter_inc,inc/filter/msfilter/util.hxx,filter/msfilter/util.hxx))
 
 # vim: set noet sw=4 ts=4:
diff --git a/filter/inc/filter/msfilter/util.hxx b/filter/inc/filter/msfilter/util.hxx
new file mode 100644
index 000..33a6658
--- /dev/null
+++ b/filter/inc/filter/msfilter/util.hxx
@@ -0,0 +1,46 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * Version: MPL 1.1 / GPLv3+ / LGPLv3+
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the License); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an AS IS basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ * for the specific language governing rights and limitations under the
+ * License.
+ *
+ * The Initial Developer of the Original Code is
+ *   Miklos Vajna vmik...@suse.cz (SUSE, Inc.)
+ * Portions created by the Initial Developer are Copyright (C) 2012 the
+ * Initial Developer. All Rights Reserved.
+ *
+ * Contributor(s):
+ *
+ * Alternatively, the contents of this file may be used under the terms of
+ * either the GNU General Public License Version 3 or later (the GPLv3+), or
+ * the GNU Lesser General Public License Version 3 or later (the LGPLv3+),
+ * in which case the provisions of the GPLv3+ or the LGPLv3+ are applicable
+ * instead of those above.
+ */
+
+#ifndef INCLUDED_MSFILTER_UTIL_HXX
+#define INCLUDED_MSFILTER_UTIL_HXX
+
+#include rtl/textenc.h
+#include filter/msfilter/msfilterdllapi.h
+
+namespace msfilter {
+namespace util {
+
+/// Returns the default encoding, based on the application's locale.
+MSFILTER_DLLPUBLIC rtl_TextEncoding GetDefaultTextEncoding();
+
+}
+}
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/filter/source/msfilter/util.cxx b/filter/source/msfilter/util.cxx
new file mode 100644
index 000..a5fb209
--- /dev/null
+++ b/filter/source/msfilter/util.cxx
@@ -0,0 +1,55 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * Version: MPL 1.1 / GPLv3+ / LGPLv3+
+ *
+ * The contents of this file are subject to the Mozilla Public License Version
+ * 1.1 (the License); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ * http://www.mozilla.org/MPL/
+ *
+ * Software distributed under the License is distributed on an AS IS basis,
+ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
+ *