Commit Graph

1113 Commits

Author SHA1 Message Date
Richard Heck
1741c87a4e Fix bug 4463. The crash was due to a call to X from inside a child process.
The main change is to support/ForkedCalls.{h,cpp}. We introduce a static variable IAmAChild and a corresponding accessor. This is set to true in a new fork() method, in the branch taken by the child. (Note: fork() is safe cross-platform, as it just returns -1 if we don't have fork().) This ForkedProcess::iAmAChild() method is then used to protect GuiView::message().

As Abdel has pointed out, there may be other such calls to be protected, e.g., the emission of the Buffer::changed() signal. Those are not addressed here.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22587 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-15 18:26:53 +00:00
Uwe Stöhr
ecde9d6a0f revert r22574 to be able to compile
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22578 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-14 23:45:04 +00:00
Abdelrazak Younes
11f36d2d72 header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22574 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-14 23:19:55 +00:00
Bo Peng
b5153b3d26 Embedding: merge lyx::EmbeddedFiles to lyx::support::EmbeddedFileList
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22448 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 18:55:34 +00:00
Bo Peng
52cd35cd5f Embedding: add embedding support for InsetBibtex. (params["embed"] is added, use EmbeddedFileList instead of FileNameList for bibtex handling, use checkable items in GuiBibtex)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22443 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 17:02:09 +00:00
Bo Peng
c81fd7337d Embedding: add embedding support for InsetInclude. (params["embed"] is added)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22441 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-08 16:35:43 +00:00
Bo Peng
c9a7e8c416 Embedding: After another round of EmbeddedFiles changes, embedded figures should more or less work now.
* src/insets/InsetExternal.cpp: fix compiling. (Does not work yet)
	* src/insets/InsetGraphics.cpp: use latexFilename to produce output.
	* src/insets/InsetGraphicsParams.cpp: use availableFile to show preview.
	* src/EmbeddedFiles.h|cpp: More things are moved from EmbeddedFiles to EmbeddedFile
	* src/frontends/qt4/GuiGraphics.cpp: remove embeddable-related operations.
	* src/support/FileName.h: make isReadableFile virtual


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22410 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-07 03:34:21 +00:00
Bo Peng
56a1dfe65f Embedding: adjust how InsetGraphics interacts with EmbeddedFiles, the ?th overhaul of the EmbeddedFile class :-(
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22377 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-05 05:28:39 +00:00
Bo Peng
1e6d09c7c8 zipunzip.cpp: Replace makedir etc with versions in support::FileName, fix a bug in extracting subdirectories
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22373 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-05 04:39:01 +00:00
Richard Heck
d23ff5f777 More encoding.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22334 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-29 21:18:50 +00:00
Richard Heck
e6cec292c5 Encoding.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22333 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-29 21:15:20 +00:00
Abdelrazak Younes
58729e1117 Following rev 21967: final touch to odocfstream:
- odocfstream: properly fix plaintext output by getting rid of ctor with std::string argument as this can be mixed up with std::ofstream(std::string) ctor where the argument is a file. UTF8 is now the default encoding.
- PreviewLoader::Impl::startLoading(): catch another potential iconv exception.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22332 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-29 18:04:43 +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
Stefan Schimanski
a5005c8c48 * added debugging flag "macros" for math macros
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22242 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 20:43:21 +00:00
Abdelrazak Younes
7998dfd948 Close to perfect scrolling. Some bugs fixing and behaviour tweaking remains but we are on a much saner ground.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22221 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-21 08:28:18 +00:00
Abdelrazak Younes
19787f2d79 * FileName::onlyPath(): use correct method. I need glasses!
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22206 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-18 10:34:53 +00:00
Abdelrazak Younes
5df6a11820 Remove unneeded assertion.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22205 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-18 10:14:01 +00:00
Abdelrazak Younes
1447a7bf98 Now that exceptions are allowed, handle gracefully the case where a Buffer temp directory could not be created. As a bonus, the user will get an informative message.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22196 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-17 18:37:13 +00:00
Abdelrazak Younes
b07d4d3e60 * FileName::onlyFileName(): use QFileInfo method.
* FileName::onlyPath(): use QFileInfo method.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22192 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-17 17:09:30 +00:00
Abdelrazak Younes
18389fb6ee * FileName::changePermission(): upon Enrico's advice, don't check file writability, relies on ::chmod() returned error.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22190 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-17 16:52:24 +00:00
Abdelrazak Younes
9439b6e6e0 * get rid of support::absolutePath()
* remove FileName.h inclusion from filetools.h


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22188 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-17 16:04:46 +00:00
Abdelrazak Younes
96ee270933 transfer os::is_absolute_path() to FileName::isAbsolute().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22187 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-17 15:15:37 +00:00
Jürgen Spitzmüller
e0b5511d74 compile fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22183 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-17 10:51:39 +00:00
Abdelrazak Younes
2f49534d3d Fix network drive access.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22179 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-17 07:50:35 +00:00
Abdelrazak Younes
e7bb71ff4e header cleanup.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22178 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-16 22:09:28 +00:00
Abdelrazak Younes
17b57a48a4 FileName::checksum(): Don't warn if file exists as this happens for all graphics at first document compilation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22168 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-16 11:53:52 +00:00
Abdelrazak Younes
efbd1d30cb Sanitize the way we use abort() and exit(). With this commit, we should never crash in release mode, even when assertions are enabled. In debug mode, we crash with abort in order to get a useful backtrace.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22165 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-16 11:34:29 +00:00
Abdelrazak Younes
c66e214724 Transfer getcwd() implementation to FileName.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22164 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-16 10:18:00 +00:00
Abdelrazak Younes
86506a80eb Simplify FileName::tempName().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22163 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-16 09:52:36 +00:00
Abdelrazak Younes
4020357dd2 Transfer tempName() implementation to FileName.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22161 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-16 07:52:38 +00:00
Abdelrazak Younes
1948c5812c Change semantics of FileName::copyTo(): we now overwrite the target file unconditionally.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22159 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-15 08:25:53 +00:00
Enrico Forestieri
01a0aabb81 Try to remove the destination without first checking for its existence
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22157 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-14 23:47:59 +00:00
Abdelrazak Younes
48d0007f71 Remove unused code.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22156 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-14 22:47:39 +00:00
Abdelrazak Younes
0caa103581 * get rid of lyxlib.h:mkdir() and makedir()
* Introduce FileName::createPath()
* Fix file copying in EmbeddedFile.cpp.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22155 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-14 22:43:39 +00:00
Abdelrazak Younes
2ce8ad5e05 Inverse logic wrongly set in rev 22151.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22153 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-14 22:33:15 +00:00
Abdelrazak Younes
d81b5c2994 Use FileName::createDirectory() instead of support::mkdir().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22151 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-14 21:13:38 +00:00
Abdelrazak Younes
d1574fec83 The rename() function removed in rev had in fact move() functionality. So we replace all uses of renameTo() with the new FileName::moveTo() method.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22149 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-14 18:16:25 +00:00
Abdelrazak Younes
6d20abb1b1 get rid of lyxlib.h:copy() and rename().
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22129 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-13 12:03:55 +00:00
Abdelrazak Younes
ec49fff94d Fix comments.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22128 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-13 11:40:41 +00:00
Abdelrazak Younes
4164f547b2 Compil fix.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22127 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-13 11:25:45 +00:00
Abdelrazak Younes
2e34b2876a get rid of lyxlib.h:chmod.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22126 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-13 11:24:10 +00:00
Abdelrazak Younes
9302bd119f compile fix following undo/redo mixup. Sorry.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22124 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-13 10:43:29 +00:00
Abdelrazak Younes
4e364577e3 Introduce FileName::changePermission() and fix ConverterCache.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22123 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-13 10:38:31 +00:00
Abdelrazak Younes
663b5f4417 Fix typo.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22118 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-13 08:02:46 +00:00
Abdelrazak Younes
15fe6b3c53 add FileName::renameTo() method.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22117 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-13 07:36:47 +00:00
André Pönitz
f407442b39 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22114 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 22:43:37 +00:00
André Pönitz
c6f8a4ade9 LYX_CXX_GLOBAL_CSTD is not really useful anymore
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22113 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 21:49:13 +00:00
Enrico Forestieri
c5ee5edd41 Another compile fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22111 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 21:09:51 +00:00
Abdelrazak Younes
7c392af6ea getting rid of superfluous lyx::support:: statements.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22106 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 19:57:42 +00:00
Enrico Forestieri
430a2c1adb Restore scons and autotools support for moc files in src/support
taken out in r22101.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22105 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 19:37:40 +00:00