Commit Graph

184 Commits

Author SHA1 Message Date
Klaus Schmidinger 4c90306502 Made skipspace() an inline function and changed it to handle the most common case of 'no leading space' very fast, and avoid calling isspace() 2007-07-21 13:39:02 +02:00
Klaus Schmidinger bd36fb5111 Improved numdigits(), isnumber() and strreplace() 2007-07-20 14:25:46 +02:00
Klaus Schmidinger 57c2b211e4 Fixed handling single byte characters >0x7F in Utf8ToArray() 2007-07-20 13:56:38 +02:00
Klaus Schmidinger c9094aad18 Fixed a buffer overflow in initializing the system character table 2007-07-20 12:31:38 +02:00
Klaus Schmidinger 7c86dcaa27 Added WeekDayNameFull() 2007-06-23 13:40:04 +02:00
Klaus Schmidinger 79b1c68ffb Now using 'fontconfig' to determine which fonts to use 2007-06-17 11:12:46 +02:00
Klaus Schmidinger b532dc8229 Replaced strncpy() and strn0cpy() with Utf8Strn0Cpy() where necessary 2007-06-16 10:41:21 +02:00
Klaus Schmidinger 81e44bce19 Renamed Utf8NumSyms() to Utf8StrLen() 2007-06-16 09:05:22 +02:00
Klaus Schmidinger d1934a7cfd Using nl_langinfo(CODESET) to determine the local codeset to use; libsi uses canonical codeset names 2007-06-15 13:25:35 +02:00
Klaus Schmidinger 1f7c70cd49 Fixed a crash in i18n character set conversion 2007-06-15 13:01:18 +02:00
Klaus Schmidinger 3224fffe87 Implemented UTF-8 handling in skincurses 2007-06-15 12:24:06 +02:00
Klaus Schmidinger c6f8a14957 Freetype font support; full UTF-8 support; dropped pixel fonts 2007-06-10 13:02:43 +02:00
Klaus Schmidinger 87dd5139ff CAM handling refactored; multiple recordings with one CAM; automatic CAM selection 2007-01-07 14:46:14 +01:00
Klaus Schmidinger 19f39258f0 Replaced 'unsigned long long' with 'uint32_t' and 'uint64' with 'uint64_t' to avoid problems on 64-bit machines 2006-12-02 11:30:19 +01:00
Klaus Schmidinger 1c3acf28af No longer stopping removing empty directories if an error occurs 2006-08-12 13:32:06 +02:00
Klaus Schmidinger 9fe7b98cdb Fixed handling relative link targets in the ReadLink() function 2006-06-17 09:48:50 +02:00
Klaus Schmidinger af9266d21c Fixed calculating the cache size in cUnbufferedFile::Read() 2006-05-26 10:13:48 +02:00
Klaus Schmidinger 44878cdb6c Fixed several spelling errors 2006-04-21 15:15:18 +02:00
Klaus Schmidinger e84a565bfa Stripped some trailing whitespace 2006-04-17 12:19:31 +02:00
Klaus Schmidinger 2eab16a310 Fixed cReadLine::Read() for lines that end with the infamous "\r\n" 2006-03-19 12:28:16 +01:00
Klaus Schmidinger 204f4a322e Further improvements to cUnbufferedFile 2006-02-05 11:06:47 +01:00
Klaus Schmidinger 116abbe05e Improved cUnbufferedFile 2006-02-04 14:12:17 +01:00
Klaus Schmidinger c60129ed78 Improved NULL checking in strreplace() 2006-01-20 14:02:17 +01:00
Klaus Schmidinger 29501203f7 Modified logging so that even on NPTL systems each line in the log file shows the individual thread's pid 2006-01-15 16:42:37 +01:00
Klaus Schmidinger 0676448937 Added a leading '0' to the day in the DayDateTime() function 2006-01-15 14:35:14 +01:00
Klaus Schmidinger 2d863532cc Cleaned up some trailing white space 2006-01-08 11:44:37 +01:00
Klaus Schmidinger bc269db4fc Disabled the use of fadvise in cUnbufferedFile because there have been several reports that it causes more problems than it solves 2006-01-05 11:32:32 +01:00
Klaus Schmidinger 61fefd00bf Implemented cBase64Encoder 2005-12-29 16:02:37 +01:00
Klaus Schmidinger aa64d64d90 Converting a grabbed image to JPEG is now done with the new function RgbToJpeg() 2005-12-29 11:24:02 +01:00
Klaus Schmidinger 579719a7f2 When displaying the amount of free disk space, the space consumed by "deleted" recordings is now taken into account 2005-12-18 10:41:26 +01:00
Klaus Schmidinger 22c5a38364 Added a copy constructor to cString and fixed its assignment operator 2005-11-26 14:16:02 +01:00
Klaus Schmidinger 92af12daac cReadLine now dynamically allocates its buffer; changed cConfig::Load() to use cReadLine instead of a fixed buffer 2005-11-04 17:18:33 +01:00
Klaus Schmidinger 259ed3055e Fixed a memory leak in cString::operator=() 2005-11-04 14:27:51 +01:00
Klaus Schmidinger 52f17c043b Removed '\n' from several syslog() calls 2005-11-04 14:22:04 +01:00
Klaus Schmidinger 697261c981 The new class cUnbufferedFile is used for the recording files to avoid thrashing the file system cache 2005-10-31 13:14:26 +01:00
Klaus Schmidinger c3a76dfef6 The '.update' file in the video directory is now touched when a recording is added or deleted 2005-09-25 13:49:31 +02:00
Klaus Schmidinger 94d43abecf Implemented a hash for the channels to reduce the system load in the EIT scanning thread 2005-09-11 13:23:49 +02:00
Klaus Schmidinger 6445b9a086 Implemented SVDRP command for plugins 2005-08-27 16:42:28 +02:00
Klaus Schmidinger bc22ed879c Files and directories are now created with rights according to the shell's umask settings 2005-08-06 09:56:08 +02:00
Klaus Schmidinger 1f631bf667 Fixed a crash with negative hash ids (made them unsigned) 2005-05-29 10:24:54 +02:00
Klaus Schmidinger 7701acd968 Now using hash tables to speed up cSchedule::GetEvent() 2005-05-28 13:17:20 +02:00
Klaus Schmidinger 1855ab0ef3 Introduced cListBase::count for better performance 2005-05-26 11:41:33 +02:00
Klaus Schmidinger b0583e5373 Switched from 'summary.vdr' to 'info.vdr' 2005-05-16 14:45:11 +02:00
Klaus Schmidinger f1494502a7 All log entries regarding timers now contain a short description of the timer 2005-03-20 15:15:42 +01:00
Klaus Schmidinger 4871f1188e Replaced the call to system("sync") in SpinUpDisk() with fdatasync(f) to avoid problems on NPTL systems 2005-02-19 13:51:44 +01:00
Klaus Schmidinger 32e0b131c9 Fixed a memory leak in AddDirectory() and strescape() 2005-02-05 10:12:14 +01:00
Klaus Schmidinger 9423c636a2 Fixed playing files with PES packets longer than 2048 byte through the full featured DVB card 2005-01-16 12:02:39 +01:00
Klaus Schmidinger f894ce7e00 Made cTimeMs::Now() static 2005-01-04 11:06:45 +01:00
Klaus Schmidinger 286af66cfb Made several functions threadsafe (cont'd) 2004-12-26 12:45:22 +01:00
Klaus Schmidinger c49253824a Replaced time_ms() with a threadsafe and non-overflowing cTimeMs 2004-12-19 18:08:09 +01:00
Klaus Schmidinger ce8369251c Removed delay_ms(), using cCondWait::SleepMs() instead 2004-12-19 17:22:13 +01:00
Klaus Schmidinger 1d3495a0f0 Made several functions threadsafe 2004-12-19 16:33:34 +01:00
Klaus Schmidinger 4f65416bd1 Some improvements to cPoller 2004-11-21 14:37:36 +01:00
Klaus Schmidinger 0b62aff0e3 Now using qsort() to sort cListBase lists 2004-11-01 10:40:38 +01:00
Klaus Schmidinger 5ed57fa1c5 The list of recordings is now kept statically in memory 2004-06-13 20:26:51 +02:00
Klaus Schmidinger 5aacc51c14 Single shot timers and events now show the day of week 2004-05-22 13:23:22 +02:00
Klaus Schmidinger 7f9d14ee8b The actual transponder data is now taken from the NIT 2004-01-11 15:54:37 +01:00
Klaus Schmidinger 2a7dd5e67d Avoiding high CPU load in case the connection to LIRC gets lost 2003-04-06 15:43:41 +02:00
Klaus Schmidinger 4ab777e98a Fixed a misplaced ')' in the fix about the stale lock files 2002-11-24 20:18:55 +01:00
Klaus Schmidinger b4d1358c50 Improved deleting stale lock files 2002-11-24 16:08:06 +01:00
Klaus Schmidinger c24dfb7f43 Extended the '-l' option to allow logging to LOG_LOCALn 2002-11-24 15:56:24 +01:00
Klaus Schmidinger 9fee2b67ab First step towards a 'unique channel ID' 2002-11-10 15:50:21 +01:00
Klaus Schmidinger ab4ceb29a0 Implemented gaps in channel numbering 2002-10-19 15:33:37 +02:00
Klaus Schmidinger 9a59ece83e Removed a superfluous error message from cLockFile::Unlock() 2002-09-09 21:44:00 +02:00
Klaus Schmidinger 470415ad23 Using cPoller instead of NeedsData 2002-08-16 09:22:29 +02:00
Klaus Schmidinger 9a1a16f3d4 Consistently using malloc/free and new/delete 2002-08-11 13:32:23 +02:00
Klaus Schmidinger 15cc1733e0 Changed the cDevice class to allow plugins to implement their own devices 2002-08-04 14:57:29 +02:00
Klaus Schmidinger 9f9d6a8a93 Implemented cStatusMonitor to allow plugins to set up a status monitor 2002-05-19 15:50:11 +02:00
Klaus Schmidinger 564403b4b1 Added 'insert' capabilities to cList (fix) 2002-05-13 17:56:17 +02:00
Klaus Schmidinger d4893ad1fe Improved the [eid]syslog() macros 2002-05-13 16:35:49 +02:00
Klaus Schmidinger 2cc450a67c Added 'insert' capabilities to cList 2002-05-12 14:46:46 +02:00
Klaus Schmidinger f492153edb Fixed a crash on systems with disks that have a block size larger than 1MB 2002-05-01 16:22:41 +02:00
Klaus Schmidinger 94849cfde8 Now using statfs() to determine the amount of free disk space 2002-03-31 20:51:06 +02:00
Klaus Schmidinger ef91debc4d Fixed safe_write() 2002-03-23 15:48:08 +01:00
Klaus Schmidinger 0be1a13c60 Improved file I/O in case of EINTR 2002-03-22 15:18:58 +01:00
Klaus Schmidinger a87e7625dd Implemented the 'First day' parameter for repeating timers 2002-02-17 13:05:05 +01:00
Klaus Schmidinger 3ecbdd489e Fixed a crash when replaying with DEBUG_OSD=1 2002-02-16 12:55:33 +01:00
Klaus Schmidinger 5abb02b301 Fixed a bug in moving timers or channels to the last position in the list 2002-02-05 18:28:14 +01:00
Klaus Schmidinger e11c7e4b1c Fixed a problem with the ERR macro defined by ncurses.h 2002-02-03 16:47:35 +01:00
Klaus Schmidinger deb9f88710 Implemented TITLE and EPISODE keywords 2002-02-03 15:55:04 +01:00
Klaus Schmidinger ddec0a101b Changed the [dei]syslog macros to use var args; fixed error handling in establishing an SVDRP connection 2002-02-02 13:44:24 +01:00
Klaus Schmidinger 28e54bc648 The 'Main' menu now displays the used disk space in the title 2002-01-27 13:11:23 +01:00
Klaus Schmidinger 503c803b8d Fixed handling file names that contain single quotes or dollar signs in calls to external commands 2002-01-26 12:04:32 +01:00
Klaus Schmidinger 305abd449f Now using 'ftw()' instead of an external 'find' to collect recordings 2002-01-20 16:47:09 +01:00
Klaus Schmidinger 6de7f7e8b2 Fixed timers starting and ending at unexpected times 2001-10-19 13:22:24 +02:00
Klaus Schmidinger 6c41138bdd Moved the _GNU_SOURCE macro into the Makefile 2001-10-07 15:14:50 +02:00
Klaus Schmidinger 8585e08a0f Fixed the 'EPG bugfix' (sometimes had duplicate information in Subtitle and Extended Description) 2001-10-05 20:40:53 +02:00
Klaus Schmidinger a0d04288c6 Lock file for accessing the video directory 2001-09-30 10:38:06 +02:00
Klaus Schmidinger 14992a8037 EPG info is now updated if the contents changes but the ID remains the same 2001-09-22 13:07:43 +02:00
Klaus Schmidinger 6ceefaf85f Better error handling when writing configuration files 2001-09-16 08:57:58 +02:00
Klaus Schmidinger e425cb9434 Changed size of all parse buffers to 10KB 2001-09-14 14:35:40 +02:00
Klaus Schmidinger 287a267669 Added missing '#include <time.h>' in tools.c 2001-08-26 15:52:17 +02:00
Klaus Schmidinger 6f68910828 Sorting timers in the 'Timers' menu 2001-08-26 14:17:20 +02:00
Klaus Schmidinger 14d3933d91 The menus and the channel display now show the current date and time 2001-08-25 13:27:26 +02:00
Klaus Schmidinger e994e3a4fe Implemented EPG bugfixing 2001-08-17 13:19:10 +02:00
Klaus Schmidinger 000ce0cf21 Made I/O more robust by handling EINTR 2001-08-12 15:22:48 +02:00
Klaus Schmidinger 2069b9946e Fixed AddDirectory 2001-08-11 14:51:28 +02:00
Klaus Schmidinger 8e99289b55 Implemented SpinUpDisk() 2001-08-11 11:15:41 +02:00
Klaus Schmidinger 627916d32a New command line option -E 2001-08-11 09:38:12 +02:00
Klaus Schmidinger ae15608197 Fixed timeout calculation in cFile::FileReady() 2001-08-05 12:40:37 +02:00