Commit Graph
69 Commits
Author SHA1 Message Date
Jean-Francois Dockes 95af155b65 comment
--HG--
branch : WINDOWSPORT
2015-09-13 13:04:44 +02:00
Jean-Francois Dockes 693d22a896 first non-compiling and incomplete draft of the windows execmd module
--HG--
branch : WINDOWSPORT
2015-09-08 10:24:19 +02:00
Jean-Francois Dockes fa556413f3 execcmd: type clean up + make sure that duplex / filter (not used by recoll) mode works by closing outgoing pipe at end of data
--HG--
branch : WINDOWSPORT
2015-09-08 07:56:50 +02:00
Jean-Francois Dockes a29af22b15 execmd comments and test driver only
--HG--
branch : WINDOWSPORT
2015-09-07 19:10:19 +02:00
Jean-Francois Dockes 5d0e8330fb execm test driver: use to test rcldoc.py
--HG--
branch : WINDOWSPORT
2015-09-07 11:15:46 +02:00
Jean-Francois Dockes 649a893d1b Hide most ExecCmd internals
--HG--
branch : WINDOWSPORT
2015-09-04 10:12:17 +02:00
Jean-Francois Dockes c7fb85981c add routine to test prog to exercise execm proto 2015-08-21 08:33:13 +02:00
Jean-Francois Dockes 4d1f679eac Use std[::tr1]::shared_ptr instead of local RefCntr by default 2015-08-09 13:54:24 +02:00
Jean-Francois Dockes e59bf51445 Impose memory usage limit on external filters. Fixes issue #259 2015-07-18 19:30:49 +02:00
Jean-Francois Dockes 9992a6f4f1 Implemented support for posix_spawn() and (main change): always use vfork() for starting external commands 2015-05-27 16:24:18 +02:00
Jean-Francois Dockes 45f37cfffb cosmetics+prepare shift to shared_ptr 2015-05-21 18:01:25 +02:00
Jean-Francois Dockes 10ea150c0f changes not affecting recoll (ifdefed) 2014-11-05 14:35:13 +01:00
Jean-Francois Dockes 3814da2a20 execmd: limit the cases where the child process could call the LOGXX functions to really exceptional cases. Previously, the child process could be called with a non-existant command to exec, which would trigger a LOGERR call, which in turn could block because the log mutex had been taken in the father process (and there is nobody in the child to free it). This would manifest itself by 20mn of "selectloop returned 1" messages as the father was waiting for a blocked child until the filter timeout. Other threads would go on, and the timeout would finally trigger, so this did not end up as a failed indexing as long as someone was patient... 2014-06-07 18:48:35 +02:00
Jean-Francois Dockes 77cba9d0b3 export RECOLL_CONFDIR to filters 2013-06-06 13:39:48 +02:00
Jean-Francois Dockes ec68cd95ba roughly auto-config threads depending on cpu count 2013-04-25 09:00:50 +02:00
Jean-Francois Dockes 4272939c3d add possibility to import tags from external app, e.g. tmsu 2013-01-22 18:30:18 +01:00
Jean-Francois Dockes 677d278fda speed up the wait loop by sleeping 5 ms before reaping status instead of failing and sleeping 1 S 2012-11-26 09:07:29 +01:00
Jean-Francois Dockes 62a8bff555 use vfork when possible + small cleanups in mt init 2012-11-18 08:33:33 +01:00
Jean-Francois Dockes e0e66a306d avoid bogus error message in margin case 2012-10-28 16:47:23 +01:00
Jean-Francois Dockes ff9a4a2a92 indexing daemon: reexecute after the initial indexing pass to get rid of memory if it was heavy 2012-05-25 18:51:52 +02:00
Jean-Francois Dockes 78bd8d63da use vector instead of list for execmd arg list 2012-04-11 15:36:49 +02:00
Jean-Francois Dockes b49da9d838 util: polish the reexec thingy 2012-03-06 07:27:39 +01:00
Jean-Francois Dockes fccc0ac09c Get rid of the GUI indexing thread. All indexing now done by recollindex, with start/stop from the GUI 2012-02-07 17:07:07 +01:00
Jean-Francois Dockes 28e53931a6 added small ut. class to help a program reexecute itself 2012-02-06 10:46:34 +01:00
Jean-Francois Dockes 7d2928022c Cleaned up execmd/netcon to enable multiple exec without locking 2011-04-29 15:01:14 +02:00
Jean-Francois Dockes 55f124725f Fix problems that occurred when multiple threads were trying to read/convert files at the same time (ie: indexing and previewing threads in the GUI calling internfile()). Either get rid of or lock-protect all shared data, eliminate misc initialization possible conflicts by using static initializers. Hopefuly closes issue #51 2011-04-28 10:58:33 +02:00
Jean-Francois Dockes b28eaf23fb Got rid of all the old RCS id strings 2011-04-27 08:22:17 +02:00
Jean-Francois Dockes 69b491feb3 recoll gui indexing: make execmd thread-safe. This plus the previous change about accessing the global config should fix the crashes observed when changing the configuration throgh the gui while the indexing thread is running 2011-03-02 16:20:25 +01:00
Jean-Francois Dockes 34151006fe Index: add call to get rid of filter subprocesses at end of indexing (for the GUI thread) 2010-11-23 19:35:44 +01:00
Jean-Francois Dockes fd0cdcbdcf use exec except of system() to start external viewer 2010-09-27 17:41:54 +02:00
Jean-Francois Dockes e8671c83be mh_execm: get rid of child process in case of error, for a clean start on next request (handle rclzip crash on encrypted files) 2010-09-23 18:32:52 +02:00
Jean-Francois Dockes e327ea0b4e make stringtotokens use vector 2010-09-13 14:17:22 +02:00
dockes 8a6c6a0026 small linux include and makefile adjustments 2009-10-15 12:32:33 +00:00
dockes d5c2dc8286 m_cancelRequest->m_killRequest to avoid confusion with cancelcheck + close descriptors before exec 2009-10-14 12:25:07 +00:00
dockes ce0078081a execm first working zip version 2009-10-14 06:21:44 +00:00
dockes 70f757368d use process group to control/kill execd processes 2009-10-13 12:21:46 +00:00
dockes 6bfdc232d1 Execmd: added count parameter to receive(), and new getline() function
Netcon: fix receive() to properly handle the case where there is initially
   data in the line buffer
2009-10-09 13:34:18 +00:00
dockes 1fe4345ca4 loglevels 2009-09-29 15:58:32 +00:00
dockes c102bb57c1 adjust log levels 2009-09-28 17:53:30 +00:00
dockes 6f483ea1dd execmd uses netcon 2009-09-26 09:30:17 +00:00
dockes 43a8962b71 1st execcmd cleanup 2009-02-05 14:35:26 +00:00
dockes 27fbdc6a12 accept additional path argument to execmd::which 2009-01-23 09:27:33 +00:00
dockes 0a04919f5a Disable filters with missing helpers for the whole indexing pass 2008-10-06 06:22:47 +00:00
dockes 9935f7b3e4 include pthread 2007-11-08 09:34:40 +00:00
dockes 94b6fa9dd5 handle putenv arg constness in configure 2007-07-14 16:53:00 +00:00
dockes 73a7e3770e cant block sigcld globally cause qt needs it 2007-05-23 08:28:35 +00:00
dockes a5efd74c71 make sure signals are only handled by the main thread. Fix bus error on rclmon exit (double delete) 2007-05-21 13:30:22 +00:00
dockes 5d1931610f block sigcld, it sometimes causes eintrs during the select() call 2007-02-19 18:14:13 +00:00
dockes d7f0562f3a created mimeview and the viewer conf edit dialog 2006-12-14 13:53:43 +00:00
dockes 72fd14f208 merged 1.6 maint branch modifs up to MERGED_TO_TRUNK_20061130 2006-11-30 13:38:44 +00:00