thiago (Thiago Macieira)
User

Projects

User does not belong to any projects.

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Monday

  • Clear sailing ahead.

User Details

User Since
Dec 3 2016, 5:11 PM (136 w, 6 d)
Availability
Available

Recent Activity

Jun 16 2019

thiago added a comment to D21855: [IdUtils] Fix aliasing warning.

Not endian-dependent, like the memcpy solution. Make sure the other side is adapted to match.

Jun 16 2019, 11:29 PM · Baloo, Frameworks
thiago added a comment to D21855: [IdUtils] Fix aliasing warning.

+1

Jun 16 2019, 11:27 PM · Baloo, Frameworks

Jun 5 2019

thiago added a comment to D17374: Profile shortcuts switch profile instead of opening new tab.

Is anyone working on the ability to open a new profile? I ask this because I had a shortcut assigned to open a root shell (Ctrl+Alt+R) and was quite surprised to find out that it didn't work anynore with no way to get it back. This is not the same as opening a new tab and switching profiles, since that won't change the command that was started.

Jun 5 2019, 6:01 PM · Konsole

May 24 2019

thiago added a comment to D21317: Manipulate bytes instead of characters.

As for truncating UTF-8 multibyte sequences in the middle, when you convert back using QFile::decodeName, it'll be nonsensical. But I don't think it really matters since you're truncating and using the display string anyway, so you're already losing data. This wasn't a recoverable conversion anyway.

May 24 2019, 7:24 PM · Frameworks
thiago added a comment to D21317: Manipulate bytes instead of characters.

I cringe a little when you apply QFile to a URL, but this is probably safe enough.

May 24 2019, 6:05 PM · Frameworks

Feb 24 2019

thiago added a comment to D18245: Create QApplication in a scope to work around possible deadlock.

This new backtrace *is* a stuck application. Please report the issue to Mesa (dri/i965). Cc me, I can walk three paces in the office to the Mesa devs and help them figure out what's happening.

Feb 24 2019, 5:32 PM · Plasma
thiago added a comment to D18245: Create QApplication in a scope to work around possible deadlock.

I repeat: there's no indication in the backtrace that it is stuck. What's your evidence that it is? You wrote an application that shows nothing and never exits. Now it showed nothing and didn't exit. That's not stuck, that's the expected behaviour.

Feb 24 2019, 5:30 PM · Plasma
thiago added a comment to D18245: Create QApplication in a scope to work around possible deadlock.

This last backtrace does not show anything stuck. Thread 1 was actively running, in fact (it's inside of malloc).

Feb 24 2019, 5:09 PM · Plasma

Feb 23 2019

thiago added a comment to D18245: Create QApplication in a scope to work around possible deadlock.

The patch is innocuous. I don't see *how* it can solve anything, though, because I don;'t know what DrKonqu::cleanup does.

Feb 23 2019, 9:03 PM · Plasma

Feb 20 2019

thiago added a comment to D19107: Write valid UTF8 characters without escaping..

It looks good to me.

Feb 20 2019, 3:52 PM · Frameworks
thiago added a comment to D19107: Write valid UTF8 characters without escaping..

Much better, thanks.

Feb 20 2019, 6:29 AM · Frameworks

Feb 19 2019

thiago added inline comments to D19107: Write valid UTF8 characters without escaping..
Feb 19 2019, 4:48 PM · Frameworks
thiago added inline comments to D19107: Write valid UTF8 characters without escaping..
Feb 19 2019, 3:35 PM · Frameworks

Dec 29 2018

thiago added a comment to D17015: Fix the Qt doc creation with Qt 5.12..

qhelpgenerator is coming back in 5.12.1. You may simply tell people to skip the .0 release and upgrade.

Dec 29 2018, 6:30 PM · Build System, Frameworks

Jul 25 2018

thiago added a comment to D14302: Don't block forever in ensureKdeinitRunning.

The idea of the old code was: if I can't get the lock, then someone else is already in the process of starting kdeinit, so I'll just wait for that to happen, by locking again, i.e. blocking on purpose, and then checking that the DBus name is up, i.e. the other process did manage to do it successfully.

Jul 25 2018, 8:46 PM · Frameworks

Jul 24 2018

thiago added inline comments to D14302: Don't block forever in ensureKdeinitRunning.
Jul 24 2018, 6:56 PM · Frameworks
thiago added a comment to D14302: Don't block forever in ensureKdeinitRunning.
(gdb) disass
Dump of assembler code for function _ZN9QLockFile7tryLockEi:
   0x00007f54be8bc752 <+2>:     mov    $0xffffffff,%eax
...
   0x00007f54be8bc76d <+29>:    test   %esi,%esi
...
   0x00007f54be8bc772 <+34>:    cmovs  %eax,%esi
...
   0x00007f54be8bc78c <+60>:    movslq %esi,%rsi
   0x00007f54be8bc78f <+63>:    callq  0x7f54be962150 <QDeadlineTimer::QDeadlineTimer(long long, Qt::TimerType)>
Jul 24 2018, 6:54 PM · Frameworks
thiago added a comment to D14302: Don't block forever in ensureKdeinitRunning.

Quickly checking on openSUSE Tumbleweed

Jul 24 2018, 6:47 PM · Frameworks
thiago added a comment to D14302: Don't block forever in ensureKdeinitRunning.

This is indeed Forever. How did it get there?

Jul 24 2018, 5:36 PM · Frameworks
thiago added a comment to D14302: Don't block forever in ensureKdeinitRunning.

Can you print the contents of the timer object inside tryLock()?

Jul 24 2018, 4:02 PM · Frameworks
thiago added a comment to D14302: Don't block forever in ensureKdeinitRunning.

Another hypothesis:

QDeadlineTimer::QDeadlineTimer(qint64 msecs, Qt::TimerType type) Q_DECL_NOTHROW
    : t2(0)
{
    setRemainingTime(msecs, type);
}

As t1 is not initialized and QDeadlineTimer::setPreciseRemainingTime only add to t1, it could be any value instead of 0?.

Should I open a Qt bug?

Jul 24 2018, 4:00 PM · Frameworks
thiago added a comment to D14302: Don't block forever in ensureKdeinitRunning.

Quick testing via gdb:

Jul 24 2018, 1:17 AM · Frameworks
thiago added a comment to D14302: Don't block forever in ensureKdeinitRunning.

I agree about tryLock(0) should return immediately, tryLock(-1) should block forever -- I wrote that code and that docu ;-)

Thiago wrote QDeadLineTimer later on though, and ported QLockFile to it. Thiago, any input?

Jul 24 2018, 1:10 AM · Frameworks

Apr 8 2018

thiago requested review of D12053: Increase SMTP session timeout to 1 minute.
Apr 8 2018, 10:13 PM · KDE PIM

Feb 3 2018

thiago added a comment to D10273: Create proper SocketAddress.

That doesn't make sense. There's QFile::encodeName in the code.

Feb 3 2018, 6:14 PM · Frameworks
thiago added a comment to D10273: Create proper SocketAddress.

Looks good.

Feb 3 2018, 5:40 PM · Frameworks
thiago added a comment to D9966: [KIO] Fix issues with sharing of file descriptor.

The patch that I can see accomplishes what the description says it should do. And I agree with the idea of the patch.

Feb 3 2018, 5:35 PM · Frameworks
thiago added a comment to D9966: [KIO] Fix issues with sharing of file descriptor.

Why do you ask for a rewview then not wait for the review?

Feb 3 2018, 2:44 AM · Frameworks

Aug 8 2017

thiago committed R32:9a8369f5dec4: One dot too many (authored by thiago).
One dot too many
Aug 8 2017, 3:10 PM
thiago committed R32:ca763a7c00d6: Fix linking issues (reduced library interface problem) (authored by thiago).
Fix linking issues (reduced library interface problem)
Aug 8 2017, 3:09 PM
thiago committed R32:f2e9946a57d9: Unbreak build for those of us who don't have boost installed. (authored by thiago).
Unbreak build for those of us who don't have boost installed.
Aug 8 2017, 3:00 PM
thiago committed R32:533002628dc9: You don't use KStaticDeleter, so don't include it (authored by thiago).
You don't use KStaticDeleter, so don't include it
Aug 8 2017, 2:56 PM
thiago committed R32:625c4e46fb5c: Adapt to no k_funcinfo (authored by thiago).
Adapt to no k_funcinfo
Aug 8 2017, 2:56 PM

Jul 15 2017

thiago added a comment to D6709: Add support for sharing file descriptor between KIO slave and KAuth helper.

This class isn't hooked up to anything. It's technically correct as an FD sender and receiver. What I want to see is how you use it, because that's extremely important to get right.

Jul 15 2017, 4:57 PM · Frameworks

Jul 3 2017

thiago added a comment to D6243: Add role for file creation time..

Qt 5.10 will have QFileInfo::birthTime too.

Jul 3 2017, 3:56 AM

May 30 2017

thiago added a comment to D5972: Set (and unset, as necessary) QT_NO_EXCEPTIONS for Clang (and ICC).
In D5972#112994, @rjvbb wrote:

Yes, here too, haven't had time to read back up on and go through the whole Qt code review process. What branch should I target, anyway?

May 30 2017, 7:06 PM · Frameworks, Build System
thiago added a comment to D5972: Set (and unset, as necessary) QT_NO_EXCEPTIONS for Clang (and ICC).

Makes sense to work around older versions of Qt without the fix.

May 30 2017, 4:55 PM · Frameworks, Build System
thiago added a comment to D5865: Add missing KDE_ENABLE_NAMED_OPERATORS function.
In D5865#112747, @rjvbb wrote:

Fix the source code.

If certain third-party libraries can't compile under MSVC 2015 (or even 2017!) with default compiler options, they don't deserve to be used. Blacklist them.

That may work for Qt but is not an acceptable attitude for ECM, IMHO - and MSVC is problematic enough to build KF5 code for other reasons not to jump through hoops for it. You cannot expect FOSS projects to avoid Boost because it uses less common feature of the standard, big ole bad M$ cannot be bothered to write a proper compiler. I'd be all for blacklisting such compilers, if anything had to be blacklisted.

May 30 2017, 5:47 AM · Build System, Frameworks

May 29 2017

thiago added a comment to D5865: Add missing KDE_ENABLE_NAMED_OPERATORS function.
In D5865#112737, @rjvbb wrote:

Why are we spending time in named operators? It's much easier to fix the source code not to use them and then the problem goes away.

This is about adding a convenience macro for projects that have dependencies using named operators, like certain Boost modules.

May 29 2017, 10:30 PM · Build System, Frameworks
thiago added a comment to D5865: Add missing KDE_ENABLE_NAMED_OPERATORS function.
In D5865#112679, @rjvbb wrote:

That option only exists in MSVC 2017.

Should we have deduce that from the docs I cite in the CMake comments? I'm willing to believe that I misread as far as support for named operators is concerned, but they do mention 2015 Update 3 specifically as the appearance of /permissive-.

May 29 2017, 9:16 PM · Build System, Frameworks
thiago added a comment to D5865: Add missing KDE_ENABLE_NAMED_OPERATORS function.
In D5865#112549, @rjvbb wrote:

If a compiler is problematic in general it may not be worth it trying to account for it in a macro, trying to coerce it into doing something it cannot handle. I don't think that's a reason not to implement the macro at all though. Even if we cannot figure out from what version onwards the /fpermissive- option works it could still be useful for cross-platform code that really needs named operator support to let the macro print a warning (or raise an error) when it is built with MSVC.

May 29 2017, 5:19 PM · Build System, Frameworks

Dec 16 2016

thiago added a comment to D2545: Cleanup KSharedUiServerProxy before qApp exists.
In D2545#69187, @kfunk wrote:
In D2545#69091, @thiago wrote:

There doesn't seem to be a way of doing some clean up before the threads are forcibly killed.

Maybe if I abuse qtmain().

This would only fix it for non-console GUI applications if I understand correctly. That's what we have here, but we'd still keep console applications buggy. There's no way to inject code before ExitProcess() with a plain console application.

Dec 16 2016, 4:42 PM
thiago added a comment to D2545: Cleanup KSharedUiServerProxy before qApp exists.

More information on this Windows behaviour:

Dec 16 2016, 1:50 AM
thiago added a comment to D2545: Cleanup KSharedUiServerProxy before qApp exists.
In D2545#69083, @kfunk wrote:

Here's the other problem: it's possible for threads to simply disappear on Windows. Given that I see "dllmain" in the backtrace (though not DllMain), I can't rule out that this has happened. Qt 5.6 has a workaround to another deadlock caused by Windows. Can you try to cherry-pick 3ec57107cedb154f256e3ad001ea5475cc64fa94 from 5.8?

With 3ec57107cedb154f256e3ad001ea5475cc64fa94 applied: Still dead-locking, same backtrace.

Dec 16 2016, 12:29 AM

Dec 3 2016

thiago added a comment to D2545: Cleanup KSharedUiServerProxy before qApp exists.
In D2545#66904, @thiago wrote:

Commit ad66dbe305cff72443f4d3484191872d56e6dfbb in qtbase did try to solve this by disconnecting the senders when the objects were getting deleted. closeConnection() is called before the thread exits (from QDBusConnectionManager::run), so I don't know how there's still a BlockingQueuedConnection active.

Is it possible that the service began being watched during destruction?

Dec 3 2016, 5:42 PM
thiago added a comment to D2545: Cleanup KSharedUiServerProxy before qApp exists.
In D2545#66545, @kfunk wrote:
In D2545#65976, @dfaure wrote:

Actually, I think Thiago's still waiting for a backtrace of all threads.

I think I've already said this via other channels: There's only one thread left at this point.

Dec 3 2016, 5:32 PM