Commit Graph

28 Commits

Author SHA1 Message Date
Georg Baum
c9c20dc23b Make IconvProcessor::Impl noncopyable
The compiler-generated copy-constructor and assigment operators would be wrong
for IconvProcessor::Impl, since cd would be copied, and iconv_close() could
thus be called twice on the same descriptor. The old code did work, but now
IconvProcessor::Impl cannot be copied by accident in the future.
2014-07-01 22:23:06 +02:00
Georg Baum
0e8fea0705 Fix memory leak and assignment operator signature
The IconvProcessor assignment operator did not delete pimpl_ and used a
non-standard signature. If you want to know why the standard signature is
important, read "Effective C++" by Scott Meyers.
2014-07-01 22:17:07 +02:00
Georg Baum
6a30211fef Make encoding conversions thread safe
This is the result of the discussion on the list "2.1.0 Blocker". Thanks to
all contributors!
The main idea is to use thread-local storage for all static variables.
This solution does not need any mutex. For more details, see the comment in
unicode.h.
2013-10-10 21:20:44 +02:00
Julien Rioux
9dd1b7c578 Use the LyX name of encodings instead of the LaTeX names.
- Use the LyX name of encodings instead of the LaTeX names.
  The LyX name must be unique, while the name used by LaTeX
  not necessarily, e.g. different packages might implement
  support for the same encoding.

- Rename koi8 to koi8-r, so that the LyX and LaTeX names match.

- Rename euc-jp-plain to euc-jp-platex, jis-plain to jis-platex
  and shift-jis-plain to shift-jis-platex.

- Add utf8-platex encoding (fixes #8408).

LyX file format incremented to 463.
2013-02-18 23:52:42 +01:00
Pavel Sanda
4375b44dd6 Comment some headers before I ditch them again. 2012-11-18 17:42:32 +01:00
Uwe Stöhr
b53243295a unicode.cpp: make it compile again
the removal of this header in [ea1d9cb3/lyxgit] was too much
2012-11-13 00:27:46 +01:00
Pavel Sanda
ea1d9cb39f Less headers in unicode.
Now lets wait for the scream from people on other compilers.
2012-11-12 03:20:50 +01:00
Peter Kümmel
b5216b25f7 update other build systems, use lyx::Mutex
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37223 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-15 21:40:09 +00:00
Pavel Sanda
6aca54134f add comment
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37218 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-15 20:06:13 +00:00
Peter Kümmel
e1f8907816 fix #7240 Random crashes: iconv() is not thread save
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37217 a592a061-630c-0410-9148-cb99ea01b6c8
2011-01-15 19:52:55 +00:00
Enrico Forestieri
9b9a3cf0c0 Another compile fix for msvc.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29741 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-19 20:28:50 +00:00
Jürgen Spitzmüller
233ff911de * potential compile fix for msvc.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29739 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-19 19:59:48 +00:00
Jürgen Spitzmüller
d5a41946a6 * calculate the size of the iconv output buffer (bug 5951).
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@29735 a592a061-630c-0410-9148-cb99ea01b6c8
2009-05-19 15:27:54 +00:00
André Pönitz
f1cba8ff64 more latin1..utf8 schanges. all of src/* should be utf8 now
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27425 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-14 15:58:50 +00:00
José Matox
1797f5218b endl is defined in ostream, iomanip is not enough (it matters for gcc 4.3)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24640 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-06 14:29:06 +00:00
Abdelrazak Younes
b90ec7288d remove unneeded includes.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24629 a592a061-630c-0410-9148-cb99ea01b6c8
2008-05-06 06:53:44 +00:00
Jürgen Spitzmüller
c26050ac83 * src/support/unicode.cpp (convert):
- flush out data at the end of the conversion process (bug 4439).

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22319 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-27 07:30:06 +00:00
Abdelrazak Younes
9abb7db468 getting rid of superfluous std:: statements.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22104 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 19:28:07 +00:00
Abdelrazak Younes
9383f4c3c6 'using namespace std' instead of 'using std::xxx'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22097 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 10:16:00 +00:00
Abdelrazak Younes
06d65218c0 - Get rid of unneeded time_type typedef.
- MSVC compile fix.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21857 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-29 08:55:43 +00:00
André Pönitz
9160d824d8 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21853 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-29 07:24:55 +00:00
André Pönitz
9d0ea8aeff Move debug.{cpp,h}, Messages.{cpp,h} and gettext.{cpp,h} to support/.
Now support/* should have no dependencies on src/* anymore.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21851 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-29 07:04:28 +00:00
André Pönitz
0e40512c86 use LYXERR macro to avoid unneeded argument evaluations...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21835 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-27 21:43:46 +00:00
André Pönitz
7c41973d51 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21411 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-03 20:52:09 +00:00
André Pönitz
a5263e0f92 introduce a header to forward declare std::string.
hope there are only conforming implementaions out there ;-}


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21312 a592a061-630c-0410-9148-cb99ea01b6c8
2007-10-31 22:40:34 +00:00
Abdelrazak Younes
c35007dbce Add two optimized versions of the ucs4 to local encoding.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18306 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-14 09:41:00 +00:00
Abdelrazak Younes
492562091e declare 'std::foo' and remove 'lyx::'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18233 a592a061-630c-0410-9148-cb99ea01b6c8
2007-05-08 14:01:40 +00:00
Bo Peng
f212b48335 Rename .C ==> .cpp for files in src/support, part two
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@18025 a592a061-630c-0410-9148-cb99ea01b6c8
2007-04-26 05:13:44 +00:00