https://bugs.kde.org/show_bug.cgi?id=513380

            Bug ID: 513380
           Summary: Assertion failure when running search and replace on
                    many files
    Classification: Applications
           Product: lokalize
      Version First 25.12.0
       Reported In:
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected], [email protected], [email protected]
  Target Milestone: ---

1. Open project with lots of files
2. Open file in editor tab
3. Open Tools -> Search and replace in files
4. Search "Source" for something tiny like "a"
5. In Mass replace dock, enter "a" in Replace, click Preview
6. In With enter something else e.g. "WWWW", click Mass Replace

Lots of files are modified, if running Lokalize from the terminal there is a
lot of debug output like:

> skipping replace because "bla bla" != "blWWWW blWWWW"

Sometimes output like:

> QFile::remove: Empty or null file name
> QObject: Cannot create children for a parent that is in a different thread.
> (Parent is QThreadPoolThread(0x55a5aa756a80), parent's thread is 
> QThread(0x55a5a8dc4350), current thread is QThreadPoolThread(0x55a5aa756a80)

Lines immediately prior to assertion fail are:

> QFile::remove: Empty or null file name
> QObject: Cannot create children for a parent that is in a different thread.
> (Parent is QThreadPoolThread(0x55a5aa756a80), parent's thread is 
> QThread(0x55a5a8dc4350), current thread is QThreadPoolThread(0x55a5aa756a80)
> ASSERT: "info.translated == 
> FileMetaData::extract(file.localPath()).translated" in file 
> /home/puf/kde/src/lokalize/src/project/updatestatsjob.cpp, line 79

GDB backtrace:

#0  __pthread_kill_implementation (threadid=<optimized out>,
signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44                
44            return INTERNAL_SYSCALL_ERROR_P (ret) ? INTERNAL_SYSCALL_ERRNO
(ret) : 0;
[Current thread is 1 (Thread 0x7feaaaffd6c0 (LWP 300481))]
(gdb) backtrace
#0  __pthread_kill_implementation (threadid=<optimized out>,
signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44
#1  0x00007feaeb0989d3 in __pthread_kill_internal (threadid=<optimized out>,
signo=6) at pthread_kill.c:89
#2  0x00007feaeb03e3a0 in __GI_raise (sig=sig@entry=6) at
../sysdeps/posix/raise.c:26
#3  0x00007feaeb02557a in __GI_abort () at abort.c:77
#4  0x00007feaeb8934a4 in qAbort () at
/usr/src/debug/qt6-base/qtbase/src/corelib/global/qassert.cpp:46
#5  qt_maybe_message_fatal<QString&> (msgType=QtFatalMsg, context=<optimized
out>, message=...) at
/usr/src/debug/qt6-base/qtbase/src/corelib/global/qlogging.cpp:2166
#6  qt_message(QtMsgType, const QMessageLogContext &, const char *, typedef
__va_list_tag __va_list_tag *)
    (msgType=msgType@entry=QtFatalMsg, context=...,
msg=msg@entry=0x7feaebc78290 "ASSERT: \"%s\" in file %s, line %d",
ap=ap@entry=0x7feaaaffc258)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/global/qlogging.cpp:412
#7  0x00007feaeb894268 in QMessageLogger::fatal (this=<optimized out>,
msg=0x7feaebc78290 "ASSERT: \"%s\" in file %s, line %d")
    at /usr/src/debug/qt6-base/qtbase/src/corelib/global/qlogging.cpp:901
#8  0x00007feaeb891930 in qt_assert (assertion=<optimized out>, file=<optimized
out>, line=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/global/qassert.cpp:113
#9  0x000055a5940b587c in cachedMetaData (file=...) at
/home/fin-w/kde/src/lokalize/src/project/updatestatsjob.cpp:79
#10 0x000055a5940b5f79 in UpdateStatsJob::run (this=0x55a5afe9edd0) at
/home/fin-w/kde/src/lokalize/src/project/updatestatsjob.cpp:119
#11 0x00007feaeba8efc5 in QThreadPoolThread::run (this=0x55a5a95a16c0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthreadpool.cpp:72
#12 0x00007feaebb2f899 in operator() (__closure=<optimized out>) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:437
#13 (anonymous
namespace)::terminate_on_exception<QThreadPrivate::start(void*)::<lambda()> >
(t=<optimized out>)
    at /usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:367
#14 QThreadPrivate::start (arg=0x55a5a95a16c0) at
/usr/src/debug/qt6-base/qtbase/src/corelib/thread/qthread_unix.cpp:397
#15 0x00007feaeb09698b in start_thread (arg=<optimized out>) at
pthread_create.c:448
#16 0x00007feaeb11a9cc in __GI___clone3 () at
../sysdeps/unix/sysv/linux/x86_64/clone3.S:78

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to