diff options
62 files changed, 530 insertions, 427 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index d01650535..41a4ed3ad 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -111,7 +111,7 @@ option( WITH_OPENEXR "Enable openexr support" ${WITH_ALL_OPTIONS} ) option( WITH_UTEMPTER "Use utempter for utmp management" ${WITH_ALL_OPTIONS} ) option( WITH_AVAHI "Enable AVAHI support" ${WITH_ALL_OPTIONS} ) option( WITH_ELFICON "Enable ELF embedded icon support" ${WITH_ALL_OPTIONS} ) -option( WITH_PCRE "Enable pcre regex support for kjs" ON ) +option( WITH_PCRE2 "Enable pcre2 regex support for kjs" ON ) option( WITH_GCC_VISIBILITY "Enable fvisibility and fvisibility-inlines-hidden" ${WITH_ALL_OPTIONS} ) option( WITH_INOTIFY "Enable inotify support for tdeio" ON ) option( WITH_GAMIN "Enable FAM/GAMIN support" ${WITH_ALL_OPTIONS} ) @@ -1223,14 +1223,14 @@ if( WITH_ELFICON ) endif( ) -##### check for pcre ########################### +##### check for pcre2 ########################### -if( WITH_PCRE ) - pkg_search_module( LIBPCRE libpcre ) - if( NOT LIBPCRE_FOUND ) - message(FATAL_ERROR "\npcre support are requested, but not found on your system" ) - endif( NOT LIBPCRE_FOUND ) - set( HAVE_PCREPOSIX 1 ) +if( WITH_PCRE2 ) + pkg_check_modules( LIBPCRE2 libpcre2-8 libpcre2-posix ) + if( NOT LIBPCRE2_FOUND ) + tde_message_fatal( "pcre2 support was requested, but not found on your system" ) + endif( ) + set( HAVE_PCRE2POSIX 1 ) endif( ) diff --git a/admin b/admin -Subproject 272990b269b5c72b397c6804397ad81e68c3791 +Subproject 8f4fde8c1473816e3d70735b2a08e7243b1eaef diff --git a/config.h.cmake b/config.h.cmake index b108f8418..fa6580cf3 100644 --- a/config.h.cmake +++ b/config.h.cmake @@ -417,8 +417,8 @@ /* Define to 1 if you have the <paths.h> header file. */ #cmakedefine HAVE_PATHS_H 1 -/* Define if you have pcreposix libraries and header files. */ -#cmakedefine HAVE_PCREPOSIX 1 +/* Define if you have pcre2 libraries and header files. */ +#cmakedefine HAVE_PCRE2POSIX 1 /* Define to 1 if you have the `poll' function. */ #cmakedefine HAVE_POLL 1 diff --git a/configure.in.bot b/configure.in.bot index 4383af879..290343112 100644 --- a/configure.in.bot +++ b/configure.in.bot @@ -23,12 +23,12 @@ if test -z "$LIBART_CONFIG"; then all_tests=bad fi -if test -z "$LIBPCRE"; then +if test -z "$LIBPCRE2"; then echo "" - echo "You're missing libpcre." + echo "You're missing libpcre2." echo "Some web pages (using regular expressions in Javascript code) will not " - echo "work correctly, the regexp support being limited without libpcre. " - echo "If you plan to use Konqueror as a Web Browser, download libpcre from " + echo "work correctly, the regexp support being limited without libpcre2. " + echo "If you plan to use Konqueror as a Web Browser, download libpcre2 from " echo "http://www.pcre.org or find a binary package for your platform." echo "" all_tests=bad diff --git a/dcop/KDE-ICE/CMakeLists.txt b/dcop/KDE-ICE/CMakeLists.txt index 6963d5017..b7c6ed0f4 100644 --- a/dcop/KDE-ICE/CMakeLists.txt +++ b/dcop/KDE-ICE/CMakeLists.txt @@ -9,8 +9,6 @@ # ################################################# -set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -include tqt.h" ) - add_definitions( -DICE_t -DTRANS_SERVER diff --git a/dcop/dcopclient.cpp b/dcop/dcopclient.cpp index 8965b6062..1533b802c 100644 --- a/dcop/dcopclient.cpp +++ b/dcop/dcopclient.cpp @@ -62,7 +62,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include <tqsocketnotifier.h> #include <tqregexp.h> -#include <tqucomextra_p.h> +#include <private/tqucomextra_p.h> #include <dcopglobal.h> #include <dcopclient.h> diff --git a/kate/data/rust.xml b/kate/data/rust.xml index 10bf247b0..0dd82f86c 100644 --- a/kate/data/rust.xml +++ b/kate/data/rust.xml @@ -34,7 +34,7 @@ <!ENTITY rustIdent "[a-zA-Z_][a-zA-Z_0-9]*"> <!ENTITY rustIntSuf "([iu](8|16|32|64)?)?"> ]> -<language name="Rust" version="1.0" kateversion="2.4" section="Sources" extensions="*.rs" mimetype="text/rust" priority="15"> +<language name="Rust" version="1.1" kateversion="2.4" section="Sources" extensions="*.rs" mimetype="text/rust" priority="15"> <highlighting> <list name="fn"> <item> fn </item> @@ -323,10 +323,14 @@ <RegExpr String="U[0-9a-fA-F]{8}" attribute="CharEscape" context="#pop"/> <RegExpr String="." attribute="Error" context="#pop"/> </context> - <context attribute="Comment" lineEndContext="#pop" name="Commentar 1"/> + <context attribute="Comment" lineEndContext="#pop" name="Commentar 1"> + <LineContinue attribute="Comment" context="#stay"/> + <IncludeRules context="##Alerts" /> + </context> <context attribute="Comment" lineEndContext="#stay" name="Commentar 2"> <DetectSpaces/> <Detect2Chars char="*" char1="/" attribute="Comment" context="#pop" endRegion="Comment"/> + <IncludeRules context="##Alerts" /> </context> </contexts> <itemDatas> @@ -348,6 +352,7 @@ <itemData name="Macro" defStyleNum="dsOthers"/> <itemData name="Attribute" defStyleNum="dsOthers"/> <itemData name="Lifetime" defStyleNum="dsOthers" bold="1"/> + <itemData name="Alert" defStyleNum="dsAlert" spellChecking="false"/> <itemData name="Error" defStyleNum="dsError"/> </itemDatas> </highlighting> diff --git a/kate/data/update-files.xml b/kate/data/update-files.xml index 12924302b..e57c63ada 100644 --- a/kate/data/update-files.xml +++ b/kate/data/update-files.xml @@ -205,7 +205,7 @@ <Definition name="RSI IDL" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/rsiidl.xml" version="3"/> <Definition name="Rich Text Format" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/rtf.xml" version="2"/> <Definition name="Ruby" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/ruby.xml" version="1.27"/> -<Definition name="Rust" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/rust.xml" version="1.0"/> +<Definition name="Rust" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/rust.xml" version="1.1"/> <Definition name="R Script" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/r.xml" version="3-1"/> <Definition name="Sather" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/sather.xml" version="2"/> <Definition name="Scala" url="http://git.trinitydesktop.org/cgit/tdelibs/plain/kate/data/scala.xml" version="6"/> diff --git a/kimgio/jp2.cpp b/kimgio/jp2.cpp index ff64f9263..7cd6879b1 100644 --- a/kimgio/jp2.cpp +++ b/kimgio/jp2.cpp @@ -15,6 +15,7 @@ #ifdef HAVE_STDINT_H #include <stdint.h> #endif +#include <kdebug.h> #include <tdetempfile.h> #include <tqcolor.h> #include <tqcstring.h> @@ -57,7 +58,7 @@ read_image( const TQImageIO* io ) tempf = new KTempFile(); if( tempf->status() != 0 ) { delete tempf; - return 0; + return nullptr; } // if tempf->setAutoDelete( true ); TQFile* out = tempf->file(); @@ -76,7 +77,7 @@ read_image( const TQImageIO* io ) } // else if( !in ) { delete tempf; - return 0; + return nullptr; } // if jas_image_t* image = jas_image_decode( in, -1, 0 ); @@ -148,16 +149,77 @@ render_view( gs_t& gs, TQImage& qti ) return true; } // render_view +static bool initializeJasper() +{ +#if defined(JAS_VERSION_MAJOR) && (JAS_VERSION_MAJOR >= 3) + jas_conf_clear(); + + // Limit JasPer memory usage to at most 512 MB + size_t memoryLimit = (512 * 1024) * 1024; + size_t jasperTotalMemory = jas_get_total_mem_size(); + if (!jasperTotalMemory) + { + jasperTotalMemory = JAS_DEFAULT_MAX_MEM_USAGE; + } + memoryLimit = memoryLimit < jasperTotalMemory ? memoryLimit : jasperTotalMemory; + jas_conf_set_max_mem_usage(memoryLimit); + + if (jas_init_library()) + { + return false; + } + + if (jas_init_thread()) + { + jas_cleanup_library(); + return false; + } + +#else + if (jas_init()) + { + return false; + } +#endif // defined(JAS_VERSION_MAJOR) && (JAS_VERSION_MAJOR >= 3) + + return true; +} + +static void cleanupJasper() +{ +#if defined(JAS_VERSION_MAJOR) && (JAS_VERSION_MAJOR >= 3) + jas_cleanup_thread(); + jas_cleanup_library(); +#endif +} + + TDE_EXPORT void kimgio_jp2_read( TQImageIO* io ) { - if( jas_init() ) return; + if (!initializeJasper()) + { + kdError(399) << "Failed to initialize JasPer library" << endl; + return; + } gs_t gs; - if( !(gs.image = read_image( io )) ) return; + gs.image = read_image(io); - if( !convert_colorspace( gs ) ) return; + if (!gs.image) + { + kdError(399) << "Failed to read JP2 image from IO." << endl; + cleanupJasper(); + return; + } + + if (!convert_colorspace(gs)) + { + kdError(399) << "Could not convert JP2 colorspace." << endl; + cleanupJasper(); + return; + } TQImage image; render_view( gs, image ); @@ -165,6 +227,8 @@ kimgio_jp2_read( TQImageIO* io ) if( gs.image ) jas_image_destroy( gs.image ); if( gs.altimage ) jas_image_destroy( gs.altimage ); + cleanupJasper(); + io->setImage( image ); io->setStatus( 0 ); } // kimgio_jp2_read @@ -236,7 +300,11 @@ write_components( jas_image_t* ji, const TQImage& qi ) TDE_EXPORT void kimgio_jp2_write( TQImageIO* io ) { - if( jas_init() ) return; + if (!initializeJasper()) + { + kdError(399) << "Failed to initialize JasPer library." << endl; + return; + } // open the stream. we write directly to the file if possible, to a // temporary file otherwise. @@ -255,12 +323,19 @@ kimgio_jp2_write( TQImageIO* io ) // by here, a jas_stream_t is open - if( !stream ) return; + if (!stream) + { + kdError(399) + << "Failed to create a stream to write JP2 image" << endl; + cleanupJasper(); + return; + } jas_image_t* ji = create_image( io->image() ); if( !ji ) { delete ktempf; jas_stream_close( stream ); + cleanupJasper(); return; } // if @@ -268,6 +343,7 @@ kimgio_jp2_write( TQImageIO* io ) delete ktempf; jas_stream_close( stream ); jas_image_destroy( ji ); + cleanupJasper(); return; } // if @@ -292,6 +368,7 @@ kimgio_jp2_write( TQImageIO* io ) jas_image_destroy( ji ); jas_stream_close( stream ); + cleanupJasper(); if( i != 0 ) { delete ktempf; return; } diff --git a/kimgio/tiffr.cpp b/kimgio/tiffr.cpp index 7f7b13ea6..2678d537e 100644 --- a/kimgio/tiffr.cpp +++ b/kimgio/tiffr.cpp @@ -6,12 +6,20 @@ #include <tiffio.h> +#include <kdebug.h> #include <tqimage.h> #include <tqfile.h> #include <tdelibs_export.h> #include <assert.h> +#if (TIFFLIB_VERSION >= 20210416) +#undef uint16 +#define uint16 uint16_t +#undef uint32 +#define uint32 uint32_t +#endif + #include "tiffr.h" static tsize_t tiff_read( thandle_t handle, tdata_t buf, tsize_t size ) @@ -66,6 +74,9 @@ TDE_EXPORT void kimgio_tiff_read( TQImageIO *io ) uint32 width, height; uint32 *data; + uint16 extra_samples_count; + uint16 *extra_samples; + // FIXME: use qdatastream // open file @@ -79,9 +90,12 @@ TDE_EXPORT void kimgio_tiff_read( TQImageIO *io ) } // create image with loaded dimensions - if( TIFFGetField( tiff, TIFFTAG_IMAGEWIDTH, &width ) != 1 - || TIFFGetField( tiff, TIFFTAG_IMAGELENGTH, &height ) != 1 ) - return; + if ((TIFFGetField(tiff, TIFFTAG_IMAGEWIDTH, &width) != 1) || + (TIFFGetField(tiff, TIFFTAG_IMAGELENGTH, &height) != 1)) + { + TIFFClose(tiff); + return; + } TQImage image( width, height, 32 ); if( image.isNull()) { @@ -128,6 +142,21 @@ TDE_EXPORT void kimgio_tiff_read( TQImageIO *io ) // swap rows } + // Extra Samples + if (TIFFGetField(tiff, TIFFTAG_EXTRASAMPLES, &extra_samples_count, &extra_samples) == 1) + { + kdDebug(399) << "TIFF image has " << extra_samples_count << " extra sample(s)." << endl; + for (uint16 i = 0; i < extra_samples_count; i++) + { + if ((extra_samples[i] == EXTRASAMPLE_ASSOCALPHA) || + (extra_samples[i] == EXTRASAMPLE_UNASSALPHA)) + { + image.setAlphaBuffer(true); + break; + } + } + } + // set channel order to Qt order // FIXME: Right now they are the same, but will it change? diff --git a/kjs/CMakeLists.txt b/kjs/CMakeLists.txt index 8e9b16849..c74bf1d5b 100644 --- a/kjs/CMakeLists.txt +++ b/kjs/CMakeLists.txt @@ -15,12 +15,12 @@ include_directories( ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_BINARY_DIR} ${CMAKE_SOURCE_DIR}/tdecore - ${LIBPCRE_INCLUDEDIR} + ${LIBPCRE2_INCLUDEDIR} ) link_directories( ${TDECORE_LIBRARY_DIRS} - ${LIBPCRE_LIBDIR} + ${LIBPCRE2_LIBDIR} ) @@ -62,6 +62,6 @@ tde_add_library( ${target} SHARED SOURCES ${${target}_SRCS} VERSION 1.2.0 LINK tdecore-shared - LINK_PRIVATE ${LIBPCRE_LIBRARIES} + LINK_PRIVATE ${LIBPCRE2_LIBRARIES} DESTINATION ${LIB_INSTALL_DIR} ) diff --git a/kjs/Makefile.am b/kjs/Makefile.am index 89f937906..8dc05f656 100644 --- a/kjs/Makefile.am +++ b/kjs/Makefile.am @@ -17,7 +17,7 @@ # Boston, MA 02110-1301, USA. YACC = bison -INCLUDES = $(PCRECFLAGS) $(all_includes) +INCLUDES = $(PCRE2CFLAGS) $(all_includes) lib_LTLIBRARIES = libkjs.la @@ -50,7 +50,7 @@ endif libkjs_la_LDFLAGS = -version-info 3:0:2 -no-undefined $(VSCRIPT) \ $(USER_LDFLAGS) $(all_libraries) -libkjs_la_LIBADD = -lm $(LIBPCRE) +libkjs_la_LIBADD = -lm $(LIBPCRE2) EXTRA_DIST = grammar.y @@ -93,7 +93,7 @@ CLEANFILES = $(LUT_FILES) ## test program (in one program for easier profiling/memory debugging) EXTRA_PROGRAMS = testkjs_static testkjs_static_SOURCES = testkjs.cpp -testkjs_static_LDADD = $(LIBPCRE) libkjs.la +testkjs_static_LDADD = $(LIBPCRE2) libkjs.la testkjs_static_LDFLAGS = -static ## test program (linked to libkjs) diff --git a/kjs/configure.in.in b/kjs/configure.in.in index 1c4d3ac52..4e6bd9742 100644 --- a/kjs/configure.in.in +++ b/kjs/configure.in.in @@ -2,52 +2,55 @@ dnl KDE JavaScript specific configure tests AC_CHECK_HEADERS(ieeefp.h float.h) -AC_DEFUN([AC_CHECK_PCREPOSIX], +AC_DEFUN(AC_CHECK_PCRE2POSIX], [ - dnl define the configure option that disables pcre - AC_ARG_ENABLE(pcre,AC_HELP_STRING([--disable-pcre],[don't require libpcre (poor RegExp support in Javascript)]), - with_pcre=$enableval, with_pcre=yes) + dnl define the configure option that disables pcre2 + AC_ARG_ENABLE(pcre2,AC_HELP_STRING([--disable-pcre],[don't require libpcre (poor RegExp support in Javascript)]), + with_pcre2=$enableval, with_pcre2=yes) - if test "$with_pcre" = "yes"; then + if test "$with_pcre2" = "yes"; then - KDE_FIND_PATH(pcre-config, PCRE_CONFIG, [${exec_prefix}/bin ${prefix}/bin], [PCRE_CONFIG="" ]) - if test -n "$PCRE_CONFIG" && $PCRE_CONFIG --libs >/dev/null 2>&1; then - LIBPCRE=`$PCRE_CONFIG --libs-posix | sed -e "s,-L/usr/lib ,," -e "s,[\b-].\+pcreposix[^[:space:]]*\b,,"` - PCRECFLAGS=`$PCRE_CONFIG --cflags` + KDE_FIND_PATH(pcre2-config, PCRE2_CONFIG, [${exec_prefix}/bin ${prefix}/bin], [PCRE2_CONFIG="" ]) + if test -n "$PCRE2_CONFIG" && $PCRE2_CONFIG --libs8 >/dev/null 2>&1; then + LIBPCRE2=`$PCRE2_CONFIG --libs-posix | sed -e "s,-L/usr/lib ,," -e "s,[\b-].\+pcreposix[^[:space:]]*\b,,"` + PCRE2CFLAGS=`$PCRE2_CONFIG --cflags` else - LIBPCRE="-lpcre" - PCRECFLAGS= + LIBPCRE2="-lpcre2-8" + PCRE2CFLAGS= fi - AC_CACHE_VAL(ac_cv_have_pcreposix, [ + AC_CACHE_VAL(ac_cv_have_pcre2posix, [ ac_save_libs="$LIBS" - LIBS="$LIBPCRE" + LIBS="$LIBPCRE2" ac_CPPFLAGS_save="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $PCRECFLAGS $all_includes" + CPPFLAGS="$CPPFLAGS $PCRE2CFLAGS $all_includes" ac_LDFLAGS_save="$LDFLAGS" LDFLAGS="$LDFLAGS $all_libraries" AC_TRY_LINK( - [#include <pcre.h>], - [regfree(0);], - [ac_cv_have_pcreposix="yes"], - [ac_cv_have_pcreposix="no"] + [ + #define PCRE2_CODE_UNIT_WIDTH 8 + #include <pcre2.h> + ], + [pcre2_regfree(0);], + [ac_cv_have_pcre2posix="yes"], + [ac_cv_have_pcre2posix="no"] ) LIBS="$ac_save_libs" LDFLAGS="$ac_LDFLAGS_save" CPPFLAGS="$ac_CPPFLAGS_save" ]) - if test "$ac_cv_have_pcreposix" = "yes"; then - AC_DEFINE(HAVE_PCREPOSIX, 1, [Define if you have pcreposix libraries and header files.]) + if test "$ac_cv_have_pcre2posix" = "yes"; then + AC_DEFINE(HAVE_PCRE2POSIX, 1, [Define if you have pcre2posix libraries and header files.]) else AC_MSG_ERROR([You're missing libpcre. -Download libpcre from http://www.pcre.org or find a binary package for your platform. +Download libpcre2 from http://www.pcre.org or find a binary package for your platform. Alternatively, you can specify --disable-pcre, but some web pages - using regular expressions in Javascript code - will not work correctly, the regexp support being quite limited if libpcre isn't present.]) fi fi ]) -AC_CHECK_PCREPOSIX -AC_SUBST(LIBPCRE) -AC_SUBST(PCRECFLAGS) +AC_CHECK_PCRE2POSIX +AC_SUBST(LIBPCRE2) +AC_SUBST(PCRE2CFLAGS) AM_CONFIG_HEADER([kjs/global.h]) diff --git a/kjs/date_object.cpp b/kjs/date_object.cpp index 982006e5d..97c272baf 100644 --- a/kjs/date_object.cpp +++ b/kjs/date_object.cpp @@ -104,7 +104,7 @@ static UString formatTime(struct tm &tm) #if defined BSD || defined(__linux__) || defined(__APPLE__) tz = tm.tm_gmtoff; #else -# if defined(__BORLANDC__) || defined (__CYGWIN__) +# if defined (__CYGWIN__) tz = - _timezone; # else tz = - timezone; @@ -189,7 +189,7 @@ static double timeZoneOffset(const struct tm *t) #if defined BSD || defined(__linux__) || defined(__APPLE__) return -(t->tm_gmtoff / 60); #else -# if defined(__BORLANDC__) || defined(__CYGWIN__) +# if defined(__CYGWIN__) // FIXME consider non one-hour DST change #if !defined(__CYGWIN__) #error please add daylight savings offset here! @@ -626,13 +626,8 @@ Object DateObjectImp::construct(ExecState *exec, const List &args) if (numArgs == 0) { // new Date() ECMA 15.9.3.3 #ifdef HAVE_SYS_TIMEB_H -# if defined(__BORLANDC__) - struct timeb timebuffer; - ftime(&timebuffer); -# else struct _timeb timebuffer; _ftime(&timebuffer); -# endif double utc = floor((double)timebuffer.time * 1000.0 + (double)timebuffer.millitm); #else struct timeval tv; @@ -805,7 +800,7 @@ double KJS::makeTime(struct tm *t, double ms, bool utc) t->tm_isdst = t3.tm_isdst; #else (void)localtime(&zero); -# if defined(__BORLANDC__) || defined(__CYGWIN__) +# if defined(__CYGWIN__) utcOffset = - _timezone; # else utcOffset = - timezone; diff --git a/kjs/regexp.cpp b/kjs/regexp.cpp index 0c2675588..c92a69d6a 100644 --- a/kjs/regexp.cpp +++ b/kjs/regexp.cpp @@ -30,21 +30,17 @@ using namespace KJS; -#ifdef PCRE_CONFIG_UTF8 RegExp::UTF8SupportState RegExp::utf8Support = RegExp::Unknown; -#endif RegExp::RegExp(const UString &p, int f) : pat(p), flgs(f), m_notEmpty(false), valid(true), buffer(0), originalPos(0) { // Determine whether libpcre has unicode support if need be.. -#ifdef PCRE_CONFIG_UTF8 if (utf8Support == Unknown) { - int supported; - pcre_config(PCRE_CONFIG_UTF8, (void*)&supported); - utf8Support = supported ? Supported : Unsupported; + uint32_t supported; + pcre2_config(PCRE2_CONFIG_COMPILED_WIDTHS, (void*)&supported); + utf8Support = (supported & 0x0001) ? Supported : Unsupported; } -#endif nrSubPatterns = 0; // determined in match() with POSIX regex. @@ -63,33 +59,33 @@ RegExp::RegExp(const UString &p, int f) escape = false; // we only care about \u if (c == 'u') { - // standard unicode escape sequence looks like \uxxxx but - // other browsers also accept less then 4 hex digits - unsigned short u = 0; - int j = 0; - for (j = 0; j < 4; ++j) { - if (i + 1 < p.size() && Lexer::isHexDigit(p[i + 1].unicode())) { - u = (u << 4) + Lexer::convertHex(p[i + 1].unicode()); - ++i; - } else { - // sequence incomplete. restore index. - // TODO: cleaner way to propagate warning - fprintf(stderr, "KJS: saw %d digit \\u sequence.\n", j); - i -= j; - break; - } - } - if (j < 4) { - // sequence was incomplete. treat \u as u which IE always - // and FF sometimes does. - intern.append(UString('u')); - } else { + // standard unicode escape sequence looks like \uxxxx but + // other browsers also accept less then 4 hex digits + unsigned short u = 0; + int j = 0; + for (j = 0; j < 4; ++j) { + if (i + 1 < p.size() && Lexer::isHexDigit(p[i + 1].unicode())) { + u = (u << 4) + Lexer::convertHex(p[i + 1].unicode()); + ++i; + } else { + // sequence incomplete. restore index. + // TODO: cleaner way to propagate warning + fprintf(stderr, "KJS: saw %d digit \\u sequence.\n", j); + i -= j; + break; + } + } + if (j < 4) { + // sequence was incomplete. treat \u as u which IE always + // and FF sometimes does. + intern.append(UString('u')); + } else { c = UChar(u); switch (u) { case 0: - // Make sure to encode 0, to avoid terminating the string - intern += UString(nil); - break; + // Make sure to encode 0, to avoid terminating the string + intern += UString(nil); + break; case '^': case '$': case '\\': @@ -101,13 +97,13 @@ RegExp::RegExp(const UString &p, int f) case '{': case '}': case '[': case ']': case '|': - // escape pattern characters have to remain escaped - intern.append(UString('\\')); - // intentional fallthrough + // escape pattern characters have to remain escaped + intern.append(UString('\\')); + // intentional fallthrough default: - intern += UString(&c, 1); - break; - } + intern += UString(&c, 1); + break; + } } continue; } @@ -126,45 +122,47 @@ RegExp::RegExp(const UString &p, int f) intern = p; } -#ifdef HAVE_PCREPOSIX - int pcreflags = 0; - const char *perrormsg; - int errorOffset; +#ifdef HAVE_PCRE2POSIX + uint32_t pcre2flags = 0; + int errorCode; + PCRE2_SIZE errorOffset; if (flgs & IgnoreCase) - pcreflags |= PCRE_CASELESS; + pcre2flags |= PCRE2_CASELESS; if (flgs & Multiline) - pcreflags |= PCRE_MULTILINE; + pcre2flags |= PCRE2_MULTILINE; -#ifdef PCRE_CONFIG_UTF8 if (utf8Support == Supported) - pcreflags |= (PCRE_UTF8 | PCRE_NO_UTF8_CHECK); -#endif + pcre2flags |= (PCRE2_UTF | PCRE2_NO_UTF_CHECK); // Fill our buffer with an encoded version, whether utf-8, or, // if PCRE is incapable, truncated. prepareMatch(intern); - pcregex = pcre_compile(buffer, pcreflags, - &perrormsg, &errorOffset, NULL); + pcregex = pcre2_compile(buffer, PCRE2_ZERO_TERMINATED, pcre2flags, + &errorCode, &errorOffset, NULL); doneMatch(); // Cleanup buffers if (!pcregex) { #ifndef NDEBUG - fprintf(stderr, "KJS: pcre_compile() failed with '%s'\n", perrormsg); + PCRE2_UCHAR errorMsg[256]; + pcre2_get_error_message(errorCode, errorMsg, sizeof(errorMsg)); + fprintf(stderr, "KJS: pcre_compile() failed with '%s'\n", errorMsg); #endif + match_data = nullptr; valid = false; return; } -#ifdef PCRE_INFO_CAPTURECOUNT // Get number of subpatterns that will be returned - int rc = pcre_fullinfo( pcregex, NULL, PCRE_INFO_CAPTURECOUNT, &nrSubPatterns); + int rc = pcre2_pattern_info(pcregex, PCRE2_INFO_CAPTURECOUNT, &nrSubPatterns); if (rc != 0) -#endif + { nrSubPatterns = 0; // fallback. We always need the first pair of offsets. + } -#else /* HAVE_PCREPOSIX */ + match_data = pcre2_match_data_create_from_pattern(pcregex, NULL); +#else int regflags = 0; #ifdef REG_EXTENDED @@ -195,9 +193,15 @@ RegExp::RegExp(const UString &p, int f) RegExp::~RegExp() { doneMatch(); // Be 100% sure buffers are freed -#ifdef HAVE_PCREPOSIX +#ifdef HAVE_PCRE2POSIX + if (match_data) + { + pcre2_match_data_free(match_data); + } if (pcregex) - pcre_free(pcregex); + { + pcre2_code_free(pcregex); + } #else /* TODO: is this really okay after an error ? */ regfree(&preg); @@ -208,7 +212,7 @@ void RegExp::prepareUtf8(const UString& s) { // Allocate a buffer big enough to hold all the characters plus \0 const int length = s.size(); - buffer = new char[length * 3 + 1]; + buffer = new buftype_t[length * 3 + 1]; // Also create buffer for positions. We need one extra character in there, // even past the \0 since the non-empty handling may jump one past the end @@ -217,7 +221,7 @@ void RegExp::prepareUtf8(const UString& s) // Convert to runs of 8-bit characters, and generate indeces // Note that we do NOT combine surrogate pairs here, as // regexps operate on them as separate characters - char *p = buffer; + buftype_t *p = buffer; int *posOut = originalPos; const UChar *d = s.data(); for (int i = 0; i != length; ++i) { @@ -225,16 +229,16 @@ void RegExp::prepareUtf8(const UString& s) int sequenceLen; if (c < 0x80) { - *p++ = (char)c; + *p++ = (buftype_t)c; sequenceLen = 1; } else if (c < 0x800) { - *p++ = (char)((c >> 6) | 0xC0); // C0 is the 2-byte flag for UTF-8 - *p++ = (char)((c | 0x80) & 0xBF); // next 6 bits, with high bit set + *p++ = (buftype_t)((c >> 6) | 0xC0); // C0 is the 2-byte flag for UTF-8 + *p++ = (buftype_t)((c | 0x80) & 0xBF); // next 6 bits, with high bit set sequenceLen = 2; } else { - *p++ = (char)((c >> 12) | 0xE0); // E0 is the 3-byte flag for UTF-8 - *p++ = (char)(((c >> 6) | 0x80) & 0xBF); // next 6 bits, with high bit set - *p++ = (char)((c | 0x80) & 0xBF); // next 6 bits, with high bit set + *p++ = (buftype_t)((c >> 12) | 0xE0); // E0 is the 3-byte flag for UTF-8 + *p++ = (buftype_t)(((c >> 6) | 0x80) & 0xBF); // next 6 bits, with high bit set + *p++ = (buftype_t)((c | 0x80) & 0xBF); // next 6 bits, with high bit set sequenceLen = 3; } @@ -262,7 +266,7 @@ void RegExp::prepareASCII (const UString& s) // when we don't have utf 8 available -- use // truncated version, and pray for the best CString truncated = s.cstring(); - buffer = new char[truncated.size() + 1]; + buffer = new buftype_t[truncated.size() + 1]; memcpy(buffer, truncated.c_str(), truncated.size()); buffer[truncated.size()] = '\0'; // For _compile use bufferSize = truncated.size(); @@ -272,11 +276,9 @@ void RegExp::prepareMatch(const UString &s) { delete[] originalPos; // Just to be sure.. delete[] buffer; -#ifdef PCRE_CONFIG_UTF8 if (utf8Support == Supported) prepareUtf8(s); else -#endif prepareASCII(s); #ifndef NDEBUG @@ -308,17 +310,16 @@ UString RegExp::match(const UString &s, int i, int *pos, int **ovector) if (i > s.size() || s.isNull()) return UString::null; -#ifdef HAVE_PCREPOSIX - int ovecsize = (nrSubPatterns+1)*3; // see pcre docu - if (ovector) *ovector = new int[ovecsize]; - if (!pcregex) +#ifdef HAVE_PCRE2POSIX + if (!pcregex || !match_data) + return UString::null; + if (!ovector) return UString::null; int startPos; int nextPos; - -#ifdef PCRE_CONFIG_UTF8 - if (utf8Support == Supported) { + if (utf8Support == Supported) + { startPos = i; while (originalPos[startPos] < i) ++startPos; @@ -328,53 +329,59 @@ UString RegExp::match(const UString &s, int i, int *pos, int **ovector) while (originalPos[nextPos] < (i + 1)) ++nextPos; } - } else -#endif + } + else { startPos = i; nextPos = i + (i < s.size() ? 1 : 0); } - int baseFlags = -#ifdef PCRE_CONFIG_UTF8 - utf8Support == Supported ? PCRE_NO_UTF8_CHECK : -#endif - 0; - int numMatches = pcre_exec(pcregex, NULL, buffer, bufferSize, startPos, - m_notEmpty ? (PCRE_NOTEMPTY | PCRE_ANCHORED | baseFlags) : baseFlags, // see man pcretest - ovector ? *ovector : 0L, ovecsize); - if (numMatches < 0) + uint32_t baseFlags = (utf8Support == Supported ? PCRE2_NO_UTF_CHECK : 0); + if (m_notEmpty) + { + baseFlags |= PCRE2_NOTEMPTY | PCRE2_ANCHORED; + } + int numMatches = pcre2_match(pcregex, buffer, PCRE2_ZERO_TERMINATED, startPos, baseFlags, match_data, NULL); + if (numMatches <= 0) { // Failed to match. - if (numMatches == PCRE_ERROR_NOMATCH && (flgs & Global) && m_notEmpty && ovector && startPos < nextPos) + if (numMatches == PCRE2_ERROR_NOMATCH && (flgs & Global) && m_notEmpty && startPos < nextPos) { // We set m_notEmpty ourselves, to look for a non-empty match - // (see man pcretest or pcretest.c for details). // So we don't stop here, we want to try again at i+1. #ifdef KJS_VERBOSE fprintf(stderr, "No match after m_notEmpty. +1 and keep going.\n"); #endif m_notEmpty = 0; - numMatches = pcre_exec(pcregex, NULL, buffer, bufferSize, nextPos, baseFlags, - ovector ? *ovector : 0L, ovecsize); - if (numMatches < 0) + baseFlags = (utf8Support == Supported ? PCRE2_NO_UTF_CHECK : 0); + numMatches = pcre2_match(pcregex, buffer, PCRE2_ZERO_TERMINATED, nextPos, baseFlags, match_data, NULL); + if (numMatches <= 0) return UString::null; } - else // done + else return UString::null; } - // Got a match, proceed with it. - // But fix up the ovector if need be.. - if (ovector && originalPos) { - for (unsigned c = 0; c < 2 * TQMIN((unsigned)numMatches, nrSubPatterns+1); ++c) { - if ((*ovector)[c] != -1) - (*ovector)[c] = originalPos[(*ovector)[c]]; + PCRE2_SIZE *pcre2_ovector = pcre2_get_ovector_pointer(match_data); + if (!pcre2_ovector) + return UString::null; + + uint32_t pcre2_ovecCount = pcre2_get_ovector_count(match_data); + *ovector = new int[pcre2_ovecCount * 2]; + if (originalPos) + { + for (size_t c = 0; c < 2 * pcre2_ovecCount; ++c) + { + (*ovector)[c] = (pcre2_ovector[c] != -1) ? originalPos[pcre2_ovector[c]] : -1; + } + } + else + { + for (size_t c = 0; c < 2 * pcre2_ovecCount; ++c) + { + (*ovector)[c] = pcre2_ovector[c]; } } - - if (!ovector) - return UString::null; // don't rely on the return value if you pass ovector==0 #else const uint maxMatch = 10; regmatch_t rmatch[maxMatch]; @@ -419,28 +426,3 @@ UString RegExp::match(const UString &s, int i, int *pos, int **ovector) } return s.substr((*ovector)[0], (*ovector)[1] - (*ovector)[0]); } - -#if 0 // unused -bool RegExp::test(const UString &s, int) -{ -#ifdef HAVE_PCREPOSIX - int ovector[300]; - CString buffer(s.cstring()); - - if (s.isNull() || - pcre_exec(pcregex, NULL, buffer.c_str(), buffer.size(), 0, - 0, ovector, 300) == PCRE_ERROR_NOMATCH) - return false; - else - return true; - -#else - - char *str = strdup(s.ascii()); - int r = regexec(&preg, str, 0, 0, 0); - free(str); - - return r == 0; -#endif -} -#endif diff --git a/kjs/regexp.h b/kjs/regexp.h index 88851260e..e731eb714 100644 --- a/kjs/regexp.h +++ b/kjs/regexp.h @@ -25,13 +25,16 @@ #include "config.h" -#ifdef HAVE_PCREPOSIX -#include <pcre.h> +#ifdef HAVE_PCRE2POSIX +#define PCRE2_CODE_UNIT_WIDTH 8 +#include <pcre2.h> +typedef PCRE2_UCHAR8 buftype_t; #else // POSIX regex - not so good... extern "C" { // bug with some libc5 distributions #include <regex.h> +typedef char buftype_t; } -#endif //HAVE_PCREPOSIX +#endif #include "ustring.h" @@ -61,7 +64,7 @@ namespace KJS { bool valid; // Cached encoding info... - char* buffer; + buftype_t *buffer; int* originalPos; int bufferSize; @@ -71,22 +74,20 @@ namespace KJS { UString originalS; // the original string, used for sanity-checking #endif -#ifndef HAVE_PCREPOSIX +#ifndef HAVE_PCRE2POSIX regex_t preg; #else - pcre *pcregex; + pcre2_code *pcregex; + pcre2_match_data *match_data; enum UTF8SupportState { Unknown, Supported, Unsupported }; - -#ifdef PCRE_CONFIG_UTF8 static UTF8SupportState utf8Support; #endif -#endif - unsigned int nrSubPatterns; + uint32_t nrSubPatterns; RegExp(); }; diff --git a/tdecore/kglobalaccel_x11.cpp b/tdecore/kglobalaccel_x11.cpp index d76b8cdac..41e58b959 100644 --- a/tdecore/kglobalaccel_x11.cpp +++ b/tdecore/kglobalaccel_x11.cpp @@ -30,7 +30,7 @@ #include <tqregexp.h> #include <tqwidget.h> #include <tqmetaobject.h> -#include <tqucomextra_p.h> +#include <private/tqucomextra_p.h> #include <tdeapplication.h> #include <kdebug.h> #include <kkeynative.h> diff --git a/tdecore/libtdecore.nmcheck b/tdecore/libtdecore.nmcheck index 7c017a6e4..92ec3ff8f 100644 --- a/tdecore/libtdecore.nmcheck +++ b/tdecore/libtdecore.nmcheck @@ -44,6 +44,8 @@ operator>> operator<< qt_qclipboard_bailout_hack kasciistricmp +kasciitolower +kasciitoupper # from libtldl lt_dl* diff --git a/tdecore/tdeapplication.h b/tdecore/tdeapplication.h index f90e8a42b..7a3dff0cf 100644 --- a/tdecore/tdeapplication.h +++ b/tdecore/tdeapplication.h @@ -30,8 +30,6 @@ class KCharsets; class DCOPClient; class DCOPObject; -#include <tqtglobaldefines.h> - typedef unsigned long Atom; #if !defined(TQ_WS_X11) typedef void Display; diff --git a/tdecore/tdeglobal.cpp b/tdecore/tdeglobal.cpp index 09f496034..aeac6f744 100644 --- a/tdecore/tdeglobal.cpp +++ b/tdecore/tdeglobal.cpp @@ -282,3 +282,20 @@ int kasciistricmp( const char *str1, const char *str2 ) return *s1 ? res : (*s2 ? -1 : 0); } +char* kasciitolower( char *s ) +{ + if ( !s ) + return 0; + for ( unsigned char *p = (unsigned char *) s; *p; ++p ) + *p = ( *p >= 'A' && *p <= 'Z' ) ? (*p - 'A' + 'a') : *p; + return s; +} + +char* kasciitoupper( char *s ) +{ + if ( !s ) + return 0; + for ( unsigned char *p = (unsigned char *) s; *p; ++p ) + *p = ( *p >= 'a' && *p <= 'z' ) ? (*p - 'a' + 'A') : *p; + return s; +} diff --git a/tdecore/tdeglobal.h b/tdecore/tdeglobal.h index 1269c36a9..d604a4244 100644 --- a/tdecore/tdeglobal.h +++ b/tdecore/tdeglobal.h @@ -234,7 +234,25 @@ inline const T& kClamp( const T& x, const T& low, const T& high ) * tqstricmp fails with e.g. the Turkish locale where 'I'.lower() != 'i' * @since 3.4 */ -int TDECORE_EXPORT kasciistricmp( const char *str1, const char *str2 ); +TDECORE_EXPORT int kasciistricmp( const char *str1, const char *str2 ); + +/** + Locale-independent function to convert ASCII strings to lower case ASCII + strings. This means that it affects @em only the ASCII characters A-Z. + + @param str pointer to the string which should be converted to lower case + @return pointer to the converted string (same as @a str) +*/ +TDECORE_EXPORT char* kasciitolower( char *str ); + +/** + Locale-independent function to convert ASCII strings to upper case ASCII + strings. This means that it affects @em only the ASCII characters a-z. + + @param str pointer to the string which should be converted to upper case + @return pointer to the converted string (same as @a str) +*/ +TDECORE_EXPORT char* kasciitoupper( char *str ); /** diff --git a/tdecore/tdehw/tdestoragedevice.h b/tdecore/tdehw/tdestoragedevice.h index ad0468ed9..88a387377 100644 --- a/tdecore/tdehw/tdestoragedevice.h +++ b/tdecore/tdehw/tdestoragedevice.h @@ -28,11 +28,7 @@ struct crypt_device; // Keep readDiskDeviceSubtypeFromString() in tdehardwaredevices.cpp in sync with this enum namespace TDEDiskDeviceType { -#if __cplusplus >= 201103L enum TDEDiskDeviceType : unsigned long long { -#else -enum TDEDiskDeviceType { -#endif Null = 0x0000000000000000ULL, MediaDevice = 0x0000000000000001ULL, Floppy = 0x0000000000000002ULL, diff --git a/tdehtml/html/Platform.h b/tdehtml/html/Platform.h index c587e0302..260931d78 100644 --- a/tdehtml/html/Platform.h +++ b/tdehtml/html/Platform.h @@ -169,12 +169,6 @@ #define WTF_COMPILER_SUNPRO 1 #endif -/* COMPILER(BORLAND) */ -/* not really fully supported - is this relevant any more? */ -#if defined(__BORLANDC__) -#define WTF_COMPILER_BORLAND 1 -#endif - /* COMPILER(CYGWIN) */ /* not really fully supported - is this relevant any more? */ #if defined(__CYGWIN__) diff --git a/tdehtml/rendering/render_replaced.cpp b/tdehtml/rendering/render_replaced.cpp index 103cad9e8..0e5666b9d 100644 --- a/tdehtml/rendering/render_replaced.cpp +++ b/tdehtml/rendering/render_replaced.cpp @@ -439,7 +439,7 @@ void RenderWidget::paint(PaintInfo& paintInfo, int _tx, int _ty) paintWidget(paintInfo, m_widget, xPos, yPos); } -#include <tqinternal_p.h> +#include <private/tqinternal_p.h> // The PaintBuffer class provides a shared buffer for widget painting. // diff --git a/tdehtml/tdehtml_ext.cpp b/tdehtml/tdehtml_ext.cpp index 16f60d277..63b4bc91b 100644 --- a/tdehtml/tdehtml_ext.cpp +++ b/tdehtml/tdehtml_ext.cpp @@ -39,7 +39,7 @@ #include <tqpopupmenu.h> #include <tqurl.h> #include <tqmetaobject.h> -#include <tqucomextra_p.h> +#include <private/tqucomextra_p.h> #include <tqdragobject.h> #include <kdebug.h> diff --git a/tdehtml/tdehtml_part.cpp b/tdehtml/tdehtml_part.cpp index 712bbe764..1b74c5388 100644 --- a/tdehtml/tdehtml_part.cpp +++ b/tdehtml/tdehtml_part.cpp @@ -110,7 +110,7 @@ using namespace DOM; #include <tqfile.h> #include <tqtooltip.h> #include <tqmetaobject.h> -#include <tqucomextra_p.h> +#include <private/tqucomextra_p.h> #include "tdehtmlpart_p.h" #include "kpassivepopup.h" diff --git a/tdeinit/autostart.cpp b/tdeinit/autostart.cpp index 3f49dfc1d..abc3c2ef3 100644 --- a/tdeinit/autostart.cpp +++ b/tdeinit/autostart.cpp @@ -118,17 +118,20 @@ AutoStart::loadAutoStartList() TQStringList kdefiles = TDEGlobal::dirs()->findAllResources("autostart", "*.desktop", false, true); files += kdefiles; - for(TQStringList::ConstIterator it = files.begin(); - it != files.end(); - ++it) + for(TQStringList::ConstIterator it = files.begin(); it != files.end(); ++it) { + // Explicitly skip autostart files from KDE + if ((*it).contains("org.kde") || (*it).startsWith("/etc/kde/xdg/autostart")) + { + continue; + } KDesktopFile config(*it, true); if (config.hasKey("X-TDE-autostart-condition")) { if (!startCondition(config.readEntry("X-TDE-autostart-condition"))) continue; } - else { - if (!startCondition(config.readEntry("X-TDE-autostart-condition"))) + else if (config.hasKey("X-KDE-autostart-condition")) { + if (!startCondition(config.readEntry("X-KDE-autostart-condition"))) continue; } if (!config.tryExec()) @@ -178,23 +181,14 @@ AutoStart::loadAutoStartList() if (config.hasKey("OnlyShowIn")) { -#ifdef WITH_OLD_XDG_STD - if ((!config.readListEntry("OnlyShowIn", ';').contains("TDE")) && (!config.readListEntry("OnlyShowIn", ';').contains("KDE"))) - continue; -#else if (!config.readListEntry("OnlyShowIn", ';').contains("TDE")) continue; -#endif } if (config.hasKey("NotShowIn")) { -#ifdef WITH_OLD_XDG_STD - if ((config.readListEntry("NotShowIn", ';').contains("TDE")) || (config.readListEntry("NotShowIn", ';').contains("KDE"))) + if (config.readListEntry("NotShowIn", ';').contains("TDE") || + config.readListEntry("NotShowIn", ';').contains("KDE")) continue; -#else - if (config.readListEntry("NotShowIn", ';').contains("TDE")) - continue; -#endif } AutoStartItem *item = new AutoStartItem; @@ -203,13 +197,13 @@ AutoStart::loadAutoStartList() if (config.hasKey("X-TDE-autostart-after")) item->startAfter = config.readEntry("X-TDE-autostart-after"); else - item->startAfter = config.readEntry("X-TDE-autostart-after"); + item->startAfter = config.readEntry("X-KDE-autostart-after"); if( m_newStartup ) { if (config.hasKey("X-TDE-autostart-phase")) item->phase = config.readNumEntry("X-TDE-autostart-phase", 2); else - item->phase = config.readNumEntry("X-TDE-autostart-phase", 2); + item->phase = config.readNumEntry("X-KDE-autostart-phase", 2); if (item->phase < 0) item->phase = 0; } @@ -218,7 +212,7 @@ AutoStart::loadAutoStartList() if (config.hasKey("X-TDE-autostart-phase")) item->phase = config.readNumEntry("X-TDE-autostart-phase", 1); else - item->phase = config.readNumEntry("X-TDE-autostart-phase", 1); + item->phase = config.readNumEntry("X-KDE-autostart-phase", 1); if (item->phase < 1) item->phase = 1; } diff --git a/tdeio/tdefile/kicondialog.cpp b/tdeio/tdefile/kicondialog.cpp index de3401947..ba54383a0 100644 --- a/tdeio/tdefile/kicondialog.cpp +++ b/tdeio/tdefile/kicondialog.cpp @@ -180,7 +180,7 @@ void TDEIconCanvas::slotLoadFiles() TQPixmap pm; pm.convertFromImage(img); TQFileInfo fi(*it); - TQIconViewItem *item = new TQIconViewItem(this, fi.baseName(), pm); + TQIconViewItem *item = new TQIconViewItem(this, fi.baseName(true), pm); item->setKey(*it); item->setDragEnabled(false); item->setDropEnabled(false); @@ -510,7 +510,7 @@ TQString TDEIconDialog::openDialog() if (name.isEmpty() || (mType == 1)) return name; TQFileInfo fi(name); - return fi.baseName(); + return fi.baseName(true); } return TQString::null; } @@ -535,7 +535,7 @@ void TDEIconDialog::slotOk() if (!name.isEmpty() && (mType != 1)) { TQFileInfo fi(name); - name = fi.baseName(); + name = fi.baseName(true); } } diff --git a/tdeio/tdefile/tdefileiconview.cpp b/tdeio/tdefile/tdefileiconview.cpp index 65d33912b..f8deeaf73 100644 --- a/tdeio/tdefile/tdefileiconview.cpp +++ b/tdeio/tdefile/tdefileiconview.cpp @@ -17,7 +17,7 @@ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ -#include <tqt.h> +#include <tqglobal.h> #include <tqfontmetrics.h> #include <tqkeycode.h> diff --git a/tdeio/tdefile/tdefileiconview.h b/tdeio/tdefile/tdefileiconview.h index 8a03d4bc9..65ff54fed 100644 --- a/tdeio/tdefile/tdefileiconview.h +++ b/tdeio/tdefile/tdefileiconview.h @@ -20,7 +20,7 @@ #ifndef TDEFILEICONVIEW_H #define TDEFILEICONVIEW_H -#include <tqt.h> +#include <tqglobal.h> #include <kiconview.h> #include <kiconloader.h> diff --git a/tdeio/tdeio/lex.c b/tdeio/tdeio/lex.c index f8d8c2bfc..6596a8082 100644 --- a/tdeio/tdeio/lex.c +++ b/tdeio/tdeio/lex.c @@ -59,15 +59,6 @@ #endif /* __STDC__ */ #endif /* ! __cplusplus */ -#ifdef __TURBOC__ - #pragma warn -rch - #pragma warn -use -#include <io.h> -#include <stdlib.h> -#define YY_USE_CONST -#define YY_USE_PROTOS -#endif - #ifdef YY_USE_CONST #define yyconst const #else diff --git a/tdeio/tdeio/scheduler.cpp b/tdeio/tdeio/scheduler.cpp index 30c2d8375..abc631284 100644 --- a/tdeio/tdeio/scheduler.cpp +++ b/tdeio/tdeio/scheduler.cpp @@ -796,6 +796,18 @@ Scheduler::_assignJobToSlave(TDEIO::Slave *slave, SimpleJob *job) { // kdDebug(7006) << "_assignJobToSlave( " << job << ", " << slave << ")" << endl; TQString dummy; + if (!job) + { + kdDebug(7006) << "_assignJobToSlave(): ERROR, non-existing job." << endl; + return false; + } + if (!slave) + { + kdDebug(7006) << "_assignJobToSlave(): ERROR, non-existing slave." << endl; + job->kill(); + return false; + } + if ((slave->slaveProtocol() != KProtocolManager::slaveProtocol( job->url(), dummy )) || (!newJobs.removeRef(job))) diff --git a/tdeioslave/ftp/ftp.cpp b/tdeioslave/ftp/ftp.cpp index db7de572c..8a87305f6 100644 --- a/tdeioslave/ftp/ftp.cpp +++ b/tdeioslave/ftp/ftp.cpp @@ -640,7 +640,7 @@ bool Ftp::ftpLogin() if( needPass ) { - tempbuf = "pass "; + tempbuf = "PASS "; tempbuf += pass.latin1(); kdDebug(7102) << "Sending Login password: " << "[protected]" << endl; loggedIn = ( ftpSendCmd(tempbuf) && (m_iRespCode == 230) ); diff --git a/tdeparts/browserinterface.cpp b/tdeparts/browserinterface.cpp index 46c89e348..0b46751fc 100644 --- a/tdeparts/browserinterface.cpp +++ b/tdeparts/browserinterface.cpp @@ -4,7 +4,7 @@ #include <tqmetaobject.h> #include <config.h> -#include <tqucomextra_p.h> +#include <private/tqucomextra_p.h> using namespace KParts; diff --git a/tdeprint/fooparser.cpp b/tdeprint/fooparser.cpp index 2f1a59e0f..55e68532b 100644 --- a/tdeprint/fooparser.cpp +++ b/tdeprint/fooparser.cpp @@ -227,19 +227,19 @@ static const short yycheck[] = { 4, /* We think this test detects Watcom and Microsoft C. */ /* This used to test MSDOS, but that is a bad idea since that symbol is in the user namespace. */ -#if (defined (_MSDOS) || defined (_MSDOS_)) && !defined (__TURBOC__) +#if defined (_MSDOS) || defined (_MSDOS_) #if 0 /* No need for malloc.h, which pollutes the namespace; instead, just don't use alloca. */ #include <malloc.h> #endif -#else /* not MSDOS, or __TURBOC__ */ +#else /* not MSDOS */ #if defined(_AIX) /* I don't know what this was needed for, but it pollutes the namespace. So I turned it off. rms, 2 May 1997. */ /* #include <malloc.h> */ #pragma alloca #define YYSTACK_USE_ALLOCA -#else /* not MSDOS, or __TURBOC__, or _AIX */ +#else /* not MSDOS or _AIX */ #if 0 #ifdef __hpux /* haible@ilog.fr says this works for HPUX 9.05 and up, and on HPUX 10. Eventually we can turn this on. */ @@ -248,7 +248,7 @@ static const short yycheck[] = { 4, #endif /* __hpux */ #endif #endif /* not _AIX */ -#endif /* not MSDOS, or __TURBOC__ */ +#endif /* not MSDOS */ #endif /* not sparc */ #endif /* not GNU C */ #endif /* alloca not defined */ diff --git a/tdeprint/fooscanner.cpp b/tdeprint/fooscanner.cpp index 441d411da..8873872b0 100644 --- a/tdeprint/fooscanner.cpp +++ b/tdeprint/fooscanner.cpp @@ -58,15 +58,6 @@ #endif /* __STDC__ */ #endif /* ! __cplusplus */ -#ifdef __TURBOC__ - #pragma warn -rch - #pragma warn -use -#include <io.h> -#include <stdlib.h> -#define YY_USE_CONST -#define YY_USE_PROTOS -#endif - #ifdef YY_USE_CONST #define yyconst const #else diff --git a/tdeprint/ppdscanner.cpp b/tdeprint/ppdscanner.cpp index 4b37737c0..8422b6c67 100644 --- a/tdeprint/ppdscanner.cpp +++ b/tdeprint/ppdscanner.cpp @@ -58,15 +58,6 @@ #endif /* __STDC__ */ #endif /* ! __cplusplus */ -#ifdef __TURBOC__ - #pragma warn -rch - #pragma warn -use -#include <io.h> -#include <stdlib.h> -#define YY_USE_CONST -#define YY_USE_PROTOS -#endif - #ifdef YY_USE_CONST #define yyconst const #else diff --git a/tdeui/kcmenumngr.h b/tdeui/kcmenumngr.h index 4483fae92..0147b3227 100644 --- a/tdeui/kcmenumngr.h +++ b/tdeui/kcmenumngr.h @@ -20,8 +20,6 @@ #ifndef KCMENUMNGR_H #define KCMENUMNGR_H -// #include <tqt.h> - #include <tqobject.h> #include <tqptrdict.h> #include <tqkeysequence.h> diff --git a/tdeui/kinputdialog.h b/tdeui/kinputdialog.h index 6fad6b54e..57140ca80 100644 --- a/tdeui/kinputdialog.h +++ b/tdeui/kinputdialog.h @@ -20,8 +20,6 @@ #ifndef KINPUTDIALOG_H #define KINPUTDIALOG_H -// #include <tqt.h> - #include <kdialogbase.h> class TQValidator; diff --git a/tdeui/klineeditdlg.h b/tdeui/klineeditdlg.h index 26d1e8dc0..979f3ad88 100644 --- a/tdeui/klineeditdlg.h +++ b/tdeui/klineeditdlg.h @@ -20,8 +20,6 @@ #ifndef __klineeditdlg_h__ #define __klineeditdlg_h__ -// #include <tqt.h> - #include <kdialogbase.h> class KLineEdit; diff --git a/tdeutils/tdecmoduleinfo.cpp b/tdeutils/tdecmoduleinfo.cpp index 9eeac6585..b94603601 100644 --- a/tdeutils/tdecmoduleinfo.cpp +++ b/tdeutils/tdecmoduleinfo.cpp @@ -227,8 +227,11 @@ TDECModuleInfo::isHiddenByDefault() const return _isHiddenByDefault; } -bool TDECModuleInfo::needsTest() const +bool TDECModuleInfo::needsTest() const { + if (!_allLoaded) + const_cast<TDECModuleInfo*>(this)->loadAll(); + return d->testModule; } diff --git a/translations/desktop_files/all_languages.desktop/ka.po b/translations/desktop_files/all_languages.desktop/ka.po index 761c54154..e2b2938c6 100644 --- a/translations/desktop_files/all_languages.desktop/ka.po +++ b/translations/desktop_files/all_languages.desktop/ka.po @@ -1,20 +1,21 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-11-25 17:36+0100\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/all-languages/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Name #: all_languages.desktop:2 @@ -134,7 +135,7 @@ msgstr "ჩეხური" #. Name #: all_languages.desktop:48 msgid "Kashubian" -msgstr "" +msgstr "კაშუბური" #. Name #: all_languages.desktop:50 @@ -199,7 +200,7 @@ msgstr "ესპანური" #. Name #: all_languages.desktop:74 msgid "Spanish (Argentina)" -msgstr "" +msgstr "ესპანური (არგენტინა)" #. Name #: all_languages.desktop:76 @@ -839,7 +840,7 @@ msgstr "უზბეკური" #. Name #: all_languages.desktop:330 msgid "Uzbek (Cyrillic)" -msgstr "" +msgstr "უზბეკური (კირილიცა)" #. Name #: all_languages.desktop:332 diff --git a/translations/desktop_files/interfaces-desktops/ka.po b/translations/desktop_files/interfaces-desktops/ka.po index 1daf83a00..e027996c9 100644 --- a/translations/desktop_files/interfaces-desktops/ka.po +++ b/translations/desktop_files/interfaces-desktops/ka.po @@ -1,20 +1,21 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-02 14:10+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/interfaces-desktop-files/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Comment #: kspeech/dcoptexttospeech.desktop:5 @@ -52,7 +53,7 @@ msgstr "bash სკრიპტების პროგრამებში #. Comment #: tdescript/scriptinterface.desktop:5 msgid "This is a generic test script engine for testing the script interface." -msgstr "ეს ძრავი სკრიპტების ინტერფეისის შესამოწმებლად გამოიყენება" +msgstr "ეს ძრავი სკრიპტების ინტერფეისის შესამოწმებლად გამოიყენება." #. Name #: tdetexteditor/kcm_tdetexteditor.desktop:9 diff --git a/translations/desktop_files/kmcop.desktop/ka.po b/translations/desktop_files/kmcop.desktop/ka.po index d9c86742a..df548442d 100644 --- a/translations/desktop_files/kmcop.desktop/ka.po +++ b/translations/desktop_files/kmcop.desktop/ka.po @@ -1,25 +1,26 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-02 13:50+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/kmcop-kmcopdesktop/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Name #: kmcop.desktop:3 msgid "KMCOP" -msgstr "" +msgstr "KMCOP" #. Comment #: kmcop.desktop:4 diff --git a/translations/desktop_files/mimetypes/ka.po b/translations/desktop_files/mimetypes/ka.po index b3fc99b60..63d9baf7d 100644 --- a/translations/desktop_files/mimetypes/ka.po +++ b/translations/desktop_files/mimetypes/ka.po @@ -1,20 +1,21 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2024-05-26 20:48+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/mimetypes/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Comment #: all.desktop:4 @@ -132,7 +133,7 @@ msgstr "PostScript დოკუმენტი" #. Comment #: application/relaxng.desktop:2 msgid "RELAX NG" -msgstr "" +msgstr "RELAX NG" #. Comment #: application/sieve.desktop:5 @@ -147,7 +148,7 @@ msgstr "სინქრონიზებული მულტიმედი #. Comment #: application/vnd.gentoo.ebuild.desktop:3 msgid "Gentoo ebuild file" -msgstr "" +msgstr "Gentoo ebuild-ის ფაილი" #. Comment #: application/vnd.mozilla.xul+xml.desktop:7 @@ -217,9 +218,8 @@ msgstr "OASIS OpenDocument დიაგრამა" #. Comment #: application/vnd.oasis.opendocument.database.desktop:6 -#, fuzzy msgid "OASIS OpenDocument Database" -msgstr "OASIS OpenDocument დიაგრამა" +msgstr "OASIS OpenDocument მონაცემთა ბაზა" #. Comment #: application/vnd.oasis.opendocument.formula.desktop:6 @@ -789,7 +789,7 @@ msgstr "Microsoft Write დოკუმენტი" #. Comment #: application/x-nzb.desktop:3 msgid "NewzBin Usenet Index" -msgstr "" +msgstr "NewzBin Usenet ინდექსი" #. Comment #: application/x-object.desktop:6 @@ -829,7 +829,7 @@ msgstr "Pathetic Writer ფაილი" #. Comment #: application/x-python-bytecode.desktop:6 msgid "Python Bytecode" -msgstr "" +msgstr "Python-ის ბაიტკოდი" #. Comment #: application/x-python.desktop:2 text/x-python.desktop:2 @@ -1428,10 +1428,8 @@ msgstr "HTML დოკუმენტი" #. Comment #: text/markdown.desktop:2 -#, fuzzy -#| msgid "Karbon14 Document" msgid "Markdown document" -msgstr "Karbon14 დოკუმენტი" +msgstr "Markdown დოკუმენტი" #. Comment #: text/plain.desktop:3 @@ -1541,7 +1539,7 @@ msgstr "პროგრამების ჟურნალი" #. Comment #: text/x-makefile.desktop:3 msgid "Makefile" -msgstr "" +msgstr "Makefile" #. Comment #: text/x-moc.desktop:3 diff --git a/translations/desktop_files/tdeabc-desktops/ka.po b/translations/desktop_files/tdeabc-desktops/ka.po index 857e07eb8..33f52719f 100644 --- a/translations/desktop_files/tdeabc-desktops/ka.po +++ b/translations/desktop_files/tdeabc-desktops/ka.po @@ -1,20 +1,21 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-03 19:54+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/tdeabc-desktop-files/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Name #: formats/binary.desktop:2 @@ -29,7 +30,7 @@ msgstr "დასტა" #. Name #: plugins/evolution/evolution.desktop:2 msgid "Evolution" -msgstr "" +msgstr "Evolution" #. Name #: plugins/file/file.desktop:2 @@ -39,7 +40,7 @@ msgstr "ფაილი" #. Name #: plugins/ldaptdeio/ldaptdeio.desktop:2 msgid "LDAP" -msgstr "" +msgstr "LDAP" #. Name #: plugins/net/net.desktop:2 @@ -49,12 +50,12 @@ msgstr "ქსელი" #. Name #: plugins/sql/sql.desktop:2 msgid "SQL" -msgstr "" +msgstr "SQL" #. Name #: tdeab2tdeabc.desktop:2 msgid "tdeab2tdeabc" -msgstr "" +msgstr "tdeab2tdeabc" #. Comment #: tdeab2tdeabc.desktop:3 diff --git a/translations/desktop_files/tdecertpart.desktop/ka.po b/translations/desktop_files/tdecertpart.desktop/ka.po index 088a117ba..25cae087a 100644 --- a/translations/desktop_files/tdecertpart.desktop/ka.po +++ b/translations/desktop_files/tdecertpart.desktop/ka.po @@ -1,25 +1,26 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-03 19:57+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/tdecertpartdesktop/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Name #: tdecertpart.desktop:3 msgid "KCertPart" -msgstr "" +msgstr "KCertPart" #. Comment #: tdecertpart.desktop:4 diff --git a/translations/desktop_files/tdecore-eventsrc/ka.po b/translations/desktop_files/tdecore-eventsrc/ka.po index 5b8a4be3f..59fbc2995 100644 --- a/translations/desktop_files/tdecore-eventsrc/ka.po +++ b/translations/desktop_files/tdecore-eventsrc/ka.po @@ -1,20 +1,21 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-03 20:06+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/tdecore-events/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Comment #: eventsrc:3 @@ -39,7 +40,7 @@ msgstr "თვითშევსება: მოტრიალება" #. Comment #: eventsrc:12 msgid "The end of the list of matches has been reached" -msgstr "თანხვედრათა სიის ბოლო." +msgstr "მიღწეულია დამთხვევების სიის დასასრული" #. Name #: eventsrc:16 @@ -49,7 +50,7 @@ msgstr "თვითშევსება: თანხვედრები ა #. Comment #: eventsrc:17 msgid "No matching completion was found" -msgstr "თანხვედერები ვერ მოიძებნა." +msgstr "დამთხვევები აღმოჩენილი არაა" #. Name #: eventsrc:21 @@ -59,7 +60,7 @@ msgstr "თვითშევსება: ნაწილობრივი თ #. Comment #: eventsrc:22 msgid "There is more than one possible match" -msgstr "მოიძებნა ერთზე მეტი თანხვედრა." +msgstr "მოიძებნა ერთზე მეტი დამთხვევა" #. Name #: eventsrc:26 @@ -79,7 +80,7 @@ msgstr "ფატალური შეცდომა" #. Comment #: eventsrc:32 msgid "There was a serious error causing the program to exit" -msgstr "სერიოზული შეცდომა, რომელმაც პროგრამიდან გასვლა გამოიწვია." +msgstr "სერიოზული შეცდომა, რომელმაც პროგრამიდან გასვლა გამოიწვია" #. Name #: eventsrc:37 diff --git a/translations/desktop_files/tdefile-desktops/ka.po b/translations/desktop_files/tdefile-desktops/ka.po new file mode 100644 index 000000000..479a875bf --- /dev/null +++ b/translations/desktop_files/tdefile-desktops/ka.po @@ -0,0 +1,23 @@ +# SOME DESCRIPTIVE TITLE. +# This file is put in the public domain. +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-06-03 20:13+0200\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/tdefile-desktop-files/ka/>\n" +"Language: ka\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" + +#. Name +#: elf/tdefile_elf.desktop:3 +msgid "ELF Info" +msgstr "ინფორმაცია ELF-ზე" diff --git a/translations/desktop_files/tdehtml-desktops/ka.po b/translations/desktop_files/tdehtml-desktops/ka.po index 2b61c6e92..04d223df3 100644 --- a/translations/desktop_files/tdehtml-desktops/ka.po +++ b/translations/desktop_files/tdehtml-desktops/ka.po @@ -1,20 +1,21 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-03 20:19+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/tdehtml-desktop-files/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Name #: java/kjavaappletviewer.desktop:3 @@ -24,7 +25,7 @@ msgstr "ჩადგმული კომპონენტი Java აპლ #. Name #: tdehtml.desktop:3 msgid "TDEHTML" -msgstr "" +msgstr "TDEHTML" #. Comment #: tdehtml.desktop:4 diff --git a/translations/desktop_files/tdeio-desktops/ka.po b/translations/desktop_files/tdeio-desktops/ka.po index ac919db4b..0698255dd 100644 --- a/translations/desktop_files/tdeio-desktops/ka.po +++ b/translations/desktop_files/tdeio-desktops/ka.po @@ -1,20 +1,21 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-03 21:00+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/tdeio-desktop-files/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Name #: application.desktop:4 @@ -74,7 +75,7 @@ msgstr "KSSL გუშაგის მოდული KDED-სთვის" #. Name #: misc/tdeio_uiserver.desktop:4 msgid "tdeio_uiserver" -msgstr "" +msgstr "tdeio_uiserver" #. Comment #: misc/tdeio_uiserver.desktop:5 diff --git a/translations/desktop_files/tdeioslave-desktops/ka.po b/translations/desktop_files/tdeioslave-desktops/ka.po index fc49ca28f..672fe5467 100644 --- a/translations/desktop_files/tdeioslave-desktops/ka.po +++ b/translations/desktop_files/tdeioslave-desktops/ka.po @@ -1,20 +1,21 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-03 21:43+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/tdeioslave-desktop-files/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Name #: bzip2/kbzip2filter.desktop:3 @@ -34,7 +35,7 @@ msgstr "HTTP ბუფერის გასუფთავება" #. Comment #: http/http_cache_cleaner.desktop:4 msgid "Cleans up old entries from the HTTP cache" -msgstr "HTTP ბუფერის მოძველებელი ელემენტების " +msgstr "გაასუფთავებს ძველ ჩანაწერებს HTTP კეშიდან" #. Name #: http/kcookiejar/kcookiejar.desktop:3 @@ -50,12 +51,12 @@ msgstr "სისტემის ყველა ბმულის თვალ #. Comment #: iso/isoservice.desktop:7 iso/isoservice.desktop:8 msgid "ISO9660 View" -msgstr "" +msgstr "ISO9660-ის ნახვა" #. Name #: iso/tdeio_iso.desktop:3 msgid "ISO9660 Image Viewer" -msgstr "" +msgstr "ISO9660 დისკის ასლის ფაილის ნახვა" #. Name #: xz/kxzfilter.desktop:3 @@ -65,4 +66,4 @@ msgstr "XZ ფილტრი" #. Description #: iso/iso.protocol:10 msgid "A tdeioslave for ISO9660 filesystems" -msgstr "" +msgstr "დამხმარე პროგრამა tdeioslave ფაილური სისტემებისთვის ISO9660" diff --git a/translations/desktop_files/tdeprint-desktops/ka.po b/translations/desktop_files/tdeprint-desktops/ka.po index e10348ed2..93f731b27 100644 --- a/translations/desktop_files/tdeprint-desktops/ka.po +++ b/translations/desktop_files/tdeprint-desktops/ka.po @@ -1,25 +1,26 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-04 16:37+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/tdeprint-desktop-files/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Name #: filters/enscript.desktop:2 msgid "enscript" -msgstr "" +msgstr "enscript" #. Comment #: filters/enscript.desktop:4 @@ -29,7 +30,7 @@ msgstr "Enscript ტექსტის ფილტრი" #. Name #: filters/imagetops.desktop:2 msgid "imagetops" -msgstr "" +msgstr "imagetops" #. Comment #: filters/imagetops.desktop:4 @@ -39,18 +40,17 @@ msgstr "გამოსახულების PostScript გაფილტვ #. Name #: filters/pdf2ps.desktop:2 msgid "pdf2ps" -msgstr "" +msgstr "pdf2ps" #. Comment #: filters/pdf2ps.desktop:4 -#, fuzzy msgid "PDF to PostScript Converter" -msgstr "PostScript-ის PDF-ში გარდაქმნა" +msgstr "PDF-დან PostScript-ში გარდაქმნა" #. Name #: filters/pdfwrite.desktop:2 msgid "pdfwrite" -msgstr "" +msgstr "pdfwrite" #. Comment #: filters/pdfwrite.desktop:4 @@ -72,15 +72,15 @@ msgid "" "mirror, but the original package will <b>not</b> work with TDE." msgstr "" "პლაკატების მცირე ზომის ქაღალდებზე ბეჭდვის პაკეტი. მის ასამუშავებლად საჭიროა, " -"რომ პროგრამა <b>poster</b> მისაწვდომი იყოს თქვენს <tt>PATH</tt>-ზე." -"<p><b><u>ყურადღება:</u></b> პაკეტები TDEPrint საიტზე მოდიფიცირებულია და " -"განსხვავდება მათგან, რომლებიც CTAN არქივშია, თუმცა პირველწყარო პაკეტები TDE-" -"ში" +"რომ პროგრამა <b>poster</b> მისაწვდომი იყოს თქვენს " +"<tt>PATH</tt>-ზე.<p><b><u>ყურადღება:</u></b> პაკეტები TDEPrint საიტზე " +"მოდიფიცირებულია და განსხვავდება მათგან, რომლებიც CTAN არქივშია, თუმცა " +"პირველწყარო პაკეტები TDE-ში." #. Name #: filters/ps2pdf.desktop:2 msgid "ps2pdf" -msgstr "" +msgstr "ps2pdf" #. Comment #: filters/ps2pdf.desktop:4 @@ -90,7 +90,7 @@ msgstr "PostScript-ის PDF-ში გარდაქმნა" #. Name #: filters/psbook.desktop:2 msgid "psbook" -msgstr "" +msgstr "psbook" #. Comment #: filters/psbook.desktop:4 @@ -100,7 +100,7 @@ msgstr "პამფლეტური ბეჭდვა (ორმხრივ #. Name #: filters/psbook1.desktop:2 msgid "psbook1" -msgstr "" +msgstr "psbook1" #. Comment #: filters/psbook1.desktop:4 @@ -110,7 +110,7 @@ msgstr "პამფლეტური ბეჭდვა - ლუწი გვ #. Name #: filters/psbook2.desktop:2 msgid "psbook2" -msgstr "" +msgstr "psbook2" #. Comment #: filters/psbook2.desktop:4 @@ -120,7 +120,7 @@ msgstr "პამფლეტური ბეჭდვა - კენტი გ #. Name #: filters/psnup.desktop:2 msgid "psnup" -msgstr "" +msgstr "psnup" #. Comment #: filters/psnup.desktop:4 @@ -130,7 +130,7 @@ msgstr "რამდენიმე გვერდის ერთ ფურც #. Name #: filters/psresize.desktop:2 msgid "psresize" -msgstr "" +msgstr "psresize" #. Comment #: filters/psresize.desktop:4 @@ -140,7 +140,7 @@ msgstr "ბეჭდვის მასშტაბირება სხვა #. Name #: filters/psselect.desktop:2 msgid "psselect" -msgstr "" +msgstr "psselect" #. Comment #: filters/psselect.desktop:4 @@ -204,9 +204,8 @@ msgstr "PDF ფაილის გაგზავნა" #. Comment #: specials.desktop:48 -#, fuzzy msgid "KSendFax" -msgstr "ფაქსით გაგზავნა" +msgstr "KSendFax" #. Description #: specials.desktop:49 @@ -231,7 +230,7 @@ msgstr "TDE-ს ბეჭდვის მოდული" #. Name #: tools/escputil/escputil.desktop:2 msgid "EPSON InkJet" -msgstr "" +msgstr "EPSON InkJet" #. Comment #: cups/cups.print:3 @@ -246,7 +245,7 @@ msgstr "ბეჭდვა გარე პროგრამიდან (ს #. Comment #: foomatic/foomatic.print:3 msgid "Foomatic (CUPS, LPRng, PDQ)" -msgstr "" +msgstr "Foomatic (CUPS, LPRng, PDQ)" #. Comment #: lpd/lpd.print:3 diff --git a/translations/desktop_files/tdespell2-desktops/ka.po b/translations/desktop_files/tdespell2-desktops/ka.po index 20a1ca7fb..4f371016a 100644 --- a/translations/desktop_files/tdespell2-desktops/ka.po +++ b/translations/desktop_files/tdespell2-desktops/ka.po @@ -1,35 +1,36 @@ # SOME DESCRIPTIVE TITLE. # This file is put in the public domain. -# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. -# -#, fuzzy +# Temuri Doghonadze <rkavt@smartprojects.ge>, 2024. msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2020-06-04 17:56+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: LANGUAGE <LL@li.org>\n" +"PO-Revision-Date: 2024-11-03 08:10+0000\n" +"Last-Translator: Temuri Doghonadze <rkavt@smartprojects.ge>\n" +"Language-Team: Georgian <https://mirror.git.trinitydesktop.org/weblate/" +"projects/tdelibs/tdespell-desktop-files/ka/>\n" "Language: ka\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 4.17\n" #. Name #: plugins/aspell/tdespell_aspell.desktop:14 msgid "ASpell" -msgstr "" +msgstr "ASpell" #. Name #: plugins/hspell/tdespell_hspell.desktop:14 msgid "HSpell" -msgstr "" +msgstr "HSpell" #. Name #: plugins/ispell/tdespell_ispell.desktop:14 msgid "ISpell" -msgstr "" +msgstr "ISpell" #. Comment #: tdespellclient.desktop:5 diff --git a/win/common.pro b/win/common.pro index 41db8d906..820246f39 100644 --- a/win/common.pro +++ b/win/common.pro @@ -141,10 +141,6 @@ contains( TEMPLATE, lib ) { } # global definitions -win32-borland { - QMAKE_CXXFLAGS += /I $(KDELIBS)/win/tdelibs_global_win.h - QMAKE_CFLAGS += /I $(KDELIBS)/win/tdelibs_global_win.h -} win32-msvc* { QMAKE_CXXFLAGS += /FI$(KDELIBS)/win/tdelibs_global_win.h QMAKE_CFLAGS += /FI$(KDELIBS)/win/tdelibs_global_win.h diff --git a/win/ctype.h b/win/ctype.h index 3a0f54bfc..4a5055116 100644 --- a/win/ctype.h +++ b/win/ctype.h @@ -22,8 +22,6 @@ #ifdef _MSC_VER # include <msvc/ctype.h> -#elif defined(__BORLANDC__) -# include <bcc/ctype.h> #endif #ifdef __cplusplus diff --git a/win/signal.h b/win/signal.h index 571280f4b..18ebc7c27 100644 --- a/win/signal.h +++ b/win/signal.h @@ -70,8 +70,6 @@ KDEWIN32_EXPORT int kill(pid_t pid, int sig); /* regular signal.h */ #ifdef _MSC_VER # include <msvc/signal.h> -#elif defined(__BORLANDC__) -# include <bcc/signal.h> #endif #endif SIGNAL_H diff --git a/win/stdlib.h b/win/stdlib.h index 96f458b0d..3a89e468b 100644 --- a/win/stdlib.h +++ b/win/stdlib.h @@ -25,8 +25,6 @@ #ifdef _MSC_VER # include <msvc/stdlib.h> -#elif defined(__BORLANDC__) -# include <bcc/stdlib.h> #endif #define __need_size_t diff --git a/win/string.h b/win/string.h index 2ed942612..f0f301aaf 100644 --- a/win/string.h +++ b/win/string.h @@ -46,8 +46,6 @@ KDEWIN32_EXPORT char* strndup(const char *src, size_t n); /* regular string.h */ #ifdef _MSC_VER # include <msvc/string.h> -#elif defined(__BORLANDC__) -# include <bcc/string.h> #endif #endif /* KDEWIN_STRING_H */ diff --git a/win/sys/fcntl.h b/win/sys/fcntl.h index 6e5cacdbe..d3cbe7def 100644 --- a/win/sys/fcntl.h +++ b/win/sys/fcntl.h @@ -20,7 +20,5 @@ /* regular sys/fcntl.h */ #ifdef _MSC_VER # include <sys/msvc/fcntl.h> -#elif defined(__BORLANDC__) -# include <sys/bcc/fcntl.h> #endif diff --git a/win/sys/stat.h b/win/sys/stat.h index 288782032..8c99bd36a 100644 --- a/win/sys/stat.h +++ b/win/sys/stat.h @@ -28,8 +28,6 @@ /*# ifdef _INC_STAT # define _STAT_H_ # endif*/ -#elif defined(__BORLANDC__) -# include <sys/bcc/stat.h> #endif typedef short nlink_t; diff --git a/win/sys/types.h b/win/sys/types.h index 9a01fa61d..d07ec0160 100644 --- a/win/sys/types.h +++ b/win/sys/types.h @@ -23,8 +23,6 @@ /* regular types.h */ #ifdef _MSC_VER # include <sys/msvc/types.h> -#elif defined(__BORLANDC__) -# include <sys/bcc/types.h> #endif #ifndef _SIZE_T_DEFINED |