ASSERT: "bytes <= bufferSize" in file tools/qringbuffer.cpp, line 74

Lubomir I. Ivanov neolit123 at gmail.com
Tue Jun 13 07:54:14 PDT 2017


On 13 June 2017 at 17:08, Thiago Macieira <thiago at macieira.org> wrote:
> On terça-feira, 13 de junho de 2017 03:09:51 PDT Linus Torvalds wrote:
>> I seem to be the only one getting this, and I don't get it reliably
>> either. It seems to be timing-related somehow, because it never
>> happens under gdb, but I *can* catch it with a core-dump and then get
>> gdb to show me where it is. Backtrace appended in case it makes
>> anybody go "yeah".
>>
>> This may be because I'm doing something wrong when I had to build my
>> own Qt-5.9 (for doing BT). It seems to be some interaction with
>> Marble.
>
> The reason you may be getting this and no one else is that you did build your
> Qt so it's got assertions enabled. For everyone else, with them disabled, the
> code is just faulty but silent.

assertions are auto-enabled for the official Windows build of Qt too.
(e.g. i get asserts and no one else does.)

>
>>   (gdb) p bytes
>>   $1 = 115
>>   (gdb) p bufferSize
>>   $2 = 0
>
> Any other threads running at this time? This smells like a race condition and
> caused by the Marble's "don't print debug" debugging functionality.
>

looks like we didn't add the QLoggingCategory after that discussion:
http://lists.subsurface-divelog.org/pipermail/subsurface/2017-April/028321.html

in the end i did not understand how to modify the MarbleDebug.cpp:
https://github.com/Subsurface-divelog/marble/blob/485d9657a12ce368d18fb5fc0e4605cd97d3ff31/src/lib/marble/MarbleDebug.cpp

lubomir
--


More information about the subsurface mailing list