BrunoSpr has quit [Quit: Vision[]: Ich wurde verwaschen!]
BrunoSpr has joined #haiku
<BrunoSpr>
how to stop or pause BeScreenCapture?
BrunoSpr has quit []
Anarchos has joined #haiku
<Anarchos>
what is the good file to put 'ssh-add' ? I put it into ~/config/profile but it launches each time i open Terminal, instead of once for the session
illwieckz has quit [Remote host closed the connection]
bitigchi has quit [Ping timeout: 480 seconds]
BrunoSpr has joined #haiku
MrSunshine has joined #haiku
BrunoSpr has quit []
BrunoSpr has joined #haiku
BrunoSpr has quit []
ClaudioM has joined #haiku
bbjimmy has quit [Quit: Vision[]: i've been blurred!]
<waddlesplash>
so! Mimeset crashing/looping forever under GCC11 is optimization-related. compiling just Directory.cpp with -O1 fixes it, -O2 causes the breakage
<waddlesplash>
time to determine what exactly is happening and whose fault it is
outsidecontext has joined #haiku
x10z has quit [Read error: Connection reset by peer]
x10z_ has joined #haiku
kallisti6 has joined #haiku
countryboy has quit [Quit: Konversation terminated!]
Maylay has quit [Remote host closed the connection]
kallisti5 has quit [Read error: Connection reset by peer]
waddlesplash has quit [Read error: Connection reset by peer]
Maylay has joined #haiku
geist has quit [Read error: Connection reset by peer]
crc has quit [Read error: Connection reset by peer]
countryboy has joined #haiku
waddlesplash has joined #haiku
bitigchi has joined #haiku
MrSunshine has joined #haiku
crc has joined #haiku
geist has joined #haiku
HaikuUser has joined #haiku
HaikuUser has quit []
<mbrumbelow[m]>
waddlesplash: I commented on the ticket.
<waddlesplash>
yes, it is
<mbrumbelow[m]>
There is a lot going on with -O2 vs just -O1.
<waddlesplash>
... who wants to bet gcc is assuming that can't be any more than 1
* waddlesplash
sighs
<Anarchos>
waddlesplash you mean the d_name ?
tqh has joined #haiku
arti has quit [Ping timeout: 480 seconds]
<waddlesplash>
indeed using a 0-sized array fixes the problem
<waddlesplash>
however, then GCC throws "stringop-overread" warnings. so, how do we avoid that
<waddlesplash>
boot/home/Desktop/haiku/headers/posix/dirent.h:19:33: error: flexible array member 'dirent::d_name' not at end of 'struct BPrivate::Storage::LongDirEntry'
<Anarchos>
waddlesplash i would have written a char* instead of char[]
<waddlesplash>
Anarchos: no, this is correct, we need char[]
<waddlesplash>
they are different in this scenario
<Anarchos>
waddlesplash ah, i am not skilled enough in char* vs char[]
arti has joined #haiku
<Anarchos>
i always take them for equivalent
<waddlesplash>
they aren't in structures. the latter means a variable length array
<Anarchos>
ok
* Anarchos
is idle: eating
gouchi has joined #haiku
mangix has joined #haiku
<tqh>
I think we use 0 sized arrays in some places.
DKnoto has joined #haiku
<PulkoMandy>
gcc2 does not use the same syntax as standard C/C++ for them
<PulkoMandy>
one needs [] and the other needs [0]
<waddlesplash>
[0] is fine, gcc4 accepts that
<PulkoMandy>
for dirent I think it should be possible to declare the structure with a size of B_FILE_NAME_LENGTH directly? Isn't that what is done in other OS already? or if that's not desirable for some reason, LongDirEntry needs to be declared in some other way
<waddlesplash>
the problem is we are using [1], which means it may or may not be treated as a VLA, depending on whether or not it is included in another struct
<waddlesplash>
using [0] does cause GCC to throw an error instead of optimizing the code incorrectly
<waddlesplash>
so, it appears we need to use [0] and then fix whatever assumed it was [1]
<PulkoMandy>
I can think of various options, but probably union { struct dirent; char buffer[B_FILE_NAME_LENGTH + sizeof(struct dirent);}; is the simplest and safest
<waddlesplash>
yes, the union approach is probably safest but also will require rewriting some code
<PulkoMandy>
will it? with an anonymous member in the union this should be transparent, I think
<waddlesplash>
oh
<waddlesplash>
union LongDirEntry { struct dirent; char _buffer[B_FILE_NAME_LENGTH]; };
<waddlesplash>
src/build/libbe/storage/Directory.cpp:362:39: error: 'union BPrivate::Storage::LongDirEntry' has no member named 'd_name'
<waddlesplash>
no luck
<PulkoMandy>
ok, the other option is to repeat the fields from dirent in LongDirEntry, IIRC the C standards guarantees that the layout of the two structures will be compatible then (this is how sockaddr vs sockaddr_in is handled)
<waddlesplash>
then we have to add weird casts
<waddlesplash>
I think the best option is to either (1) use a macro, or (2) add operator()
<PulkoMandy>
the other option is declaring struct dirent with a large fixed size buffer, I think some of the other unix do that
<waddlesplash>
yes but then we run into problems that things assume dirent is larger than it is, may break ABI
<PulkoMandy>
I don't see where people would assume that
<PulkoMandy>
you're already expected to have a name after the dirent everywhere in our API
<waddlesplash>
yes, but how long is the name? ti varies
<waddlesplash>
we actually make use of this in the kernel to pass back multiple dirents at onnce
<waddlesplash>
instead of having to use all 1024 bytes
<waddlesplash>
yeah, ok, so they are using dynamic sizing a different way
<PulkoMandy>
yes, but we don't rely on the size of the struct anywhere I think. It would break the API (if you recompile the same code, suddenly you will allocate 255 more bytes in some cases) but I think it wouldn't break the ABI for already compiled code
<waddlesplash>
I think just using [0] is easier
<waddlesplash>
that is technically also an API break, but not as big of one
<PulkoMandy>
I don't remember the rules for sizeof() in C++, possibly it doesn't even break API
<waddlesplash>
I think I'm just going to use the macro solution here
<PulkoMandy>
well it looks like flexible arrays made it to C++ only in C++14. In C99 their size is 0 (but they can add padding at the end of the struct). gcc2 predates both C99 and C++14 so... I have no idea :)
<waddlesplash>
I can't find a way to conveniently construct something that GCC is appeased with
<waddlesplash>
unless, I have one last idea for an insane hack
<waddlesplash>
GCC goes back to saying "src/build/libbe/storage/Directory.cpp:362:32: warning: 'int strcmp(const char*, const char*)' reading 1 or more bytes..."
<waddlesplash>
because Wstringop-overread is apparently very dumb
gouchi has quit [Remote host closed the connection]
<tqh>
nice, $ works as a function name :)
Vidrep_64 has quit [Quit: Vision[]: i've been blurred!]
Vidrep_64 has joined #haiku
Mrten[m] has joined #haiku
bitigchi_2 has joined #haiku
bitigchi has quit [Read error: Connection reset by peer]
bitigchi_2 has quit []
ClaudioM_ has joined #haiku
arti_ has joined #haiku
ClaudioM has quit [Ping timeout: 480 seconds]
arti has quit [Ping timeout: 480 seconds]
Anarchos has quit [Ping timeout: 480 seconds]
illwieckz has joined #haiku
Anarchos has joined #haiku
BrunoSpr has quit [Quit: Vision[]: i've been shreederd!]
<waddlesplash>
mh, all filesystems kind of assume sizeof(dirent) includes the 1 byte
<waddlesplash>
guess I get to fix all them
illwieckz has quit [Ping timeout: 480 seconds]
ClaudioM_ has quit [Quit: leaving]
ClaudioM has joined #haiku
<PulkoMandy>
well, if changing the size fron 1 to B_PATH_NAME_LENGTH is an API or ABI break, so is changing from 1 to 0
Anarchos has quit [Quit: Vision[]: i've been blurred!]
bitigchi has joined #haiku
Anarchos has joined #haiku
lorglas has joined #haiku
<waddlesplash>
right, but much easier to remove a -1 or add a +1 then the much different math of B_PATH_NAME_LENGTH
<x512[m]>
Adding `char string[0]; char stub;` may fix problem.
<waddlesplash>
???
<waddlesplash>
no, it won't
<waddlesplash>
that causes GCC to throw many errors
<Not-5726>
[haikuports/haikuports] korli pushed 2 commits to master [+5/-0/±0] https://git.io/J1a9F
<Not-5726>
[haikuports/haikuports] korli 810e583 - qtwebengine: new recipe
<Not-5726>
[haikuports/haikuports] korli 6b7fce3 - falkon: new recipe
<waddlesplash>
!!!!!!!!!!!!
<waddlesplash>
WOW
tqh has quit [Quit: Leaving]
<x512[m]>
?
<mbrumbelow[m]>
Fixed?
<bitigchi>
Wat
<waddlesplash>
it's 13 versions behind apparently, but still, that's very impressive
<Niklas[m]>
Does this new QtWebEngine port mean that QtWebEngine on Haiku actually works or is this just another unfinished draft?
freakazoid12345 has joined #haiku
<waddlesplash>
no, it actually works
<waddlesplash>
at least according to korli's notes
<Niklas[m]>
That's great!Will try tomorrow :D
<waddlesplash>
if it's even available by then lol
<waddlesplash>
who knows how long the buildbot is going to take on this one
<Niklas[m]>
If it will be available in the repo soon (even if it takes a few days),I can wait.But compiling it myself also shouldn't be that much of a problem if it's just running Haikuporter.
<waddlesplash>
it will take literal hours to build :p
<waddlesplash>
yes, may as well just wait for the buildbot
lorglas has quit [Quit: Vision[]: i've been blurred!]
<Niklas[m]>
Compiling shouldn't be that much of a problem with an 8-core i7 cpu but I don't really want to download the whole Chromium source to my rather small 500GB SSD
freakazoid343 has quit [Ping timeout: 480 seconds]
<nekobot>
[haiku/haiku] 9cc171821247 - libbe_build: Fix build on non-Haiku platforms.
kescher has quit [Quit: Bye]
AlwaysLivid has joined #haiku
kescher has joined #haiku
DKnoto has quit [Ping timeout: 480 seconds]
BrunoSpr has joined #haiku
<Not-5726>
[haikuports/haikuports] korli pushed 1 commit to master [+0/-0/±1] https://git.io/J1aFy
<Not-5726>
[haikuports/haikuports] korli 64d1234 - qtwebengine: updates SUMMARY and DESCRIPTION
DKnoto has joined #haiku
Diver has quit [Quit: Leaving.]
nagerst has joined #haiku
<nagerst>
do anyone know if the hidden dma boot option is added in new relases nowadays? jessicah helped me last time to install haiku, but i do not remember how i got it to works last time. It was one of the boot options that failed... i would like to write it down
bitigchi has quit [Ping timeout: 480 seconds]
<Not-5726>
[haikuports/haikuports] korli pushed 1 commit to master [+0/-0/±2] https://git.io/J1axW
<Not-5726>
[haikuports/haikuports] korli 8f65040 - bear: remove -lstdc++-fs from the patch
freakazoid343 has joined #haiku
bitigchi has joined #haiku
freakazoid12345 has quit [Ping timeout: 480 seconds]
x10z has joined #haiku
vdamewood has joined #haiku
<Not-5726>
[haikuports/haikuports] korli pushed 1 commit to master [+1/-1/±0] https://git.io/J1ajk
<Not-5726>
[haikuports/haikuports] korli d57b310 - libwebp: bump version
<nekobot>
[haiku/haiku] d9df25670400 - FUSEVolume: Add a ROUNDUP() macro and use it.
<nekobot>
[haiku/haiku] 1cb5cfb244d9 - libroot_build: Use a union for dirent structures.
<waddlesplash>
well, there it is
MrSunshine_ has joined #haiku
MrSunshine has quit [Ping timeout: 480 seconds]
<BrunoSpr>
hi all... anyone knows why PecoBeat does not find my mouse?
<Not-5726>
[haiku/haikuwebkit] pulkomandy pushed 19 commits to haiku [+50/-8/±221] https://git.io/J1VJk
<Not-5726>
[haiku/haikuwebkit] heycam 2341cc1 - Change some bitwise OR operators to logical OR
<Not-5726>
[haiku/haikuwebkit] AndresGonzalezApple 2054ce9 - Move handling of ChildrenChanged notifications out of the AccessibilityObjects into AXObjectCache.
<Not-5726>
[haiku/haikuwebkit] Alan Bujtas dfa9745 - [LFC][IFC] Add unicode-bidi control characters
<Not-5726>
[haiku/haikuwebkit] ... and 16 more commits.
HaikuUser has joined #haiku
Kernel86_ has joined #haiku
HaikuUser has quit []
Skipp_OSX has joined #haiku
Skipp_OSX has quit []
Rynn has joined #haiku
Mrten[m] is now known as Mrten[m]1
<nagerst>
what does the library ending .so really stand for?
<waddlesplash>
shared object
<nagerst>
used in many nix systems that qualify for posix certification
<nagerst>
waddlesplash: thank you
<nagerst>
waddlesplash: kinda like a dll or more like a com object?
<nagerst>
sorry to waste your time to educate me.
<waddlesplash>
com objects are stored in shared objects
<waddlesplash>
dll are shared objects, yes
BrunoSpr has quit [Quit: Vision[]: i've been shreederd!]
<nagerst>
what would you call a lib that is not shared. I mean what would the extension be in haiku.
<waddlesplash>
nothing
<nagerst>
good point
<nagerst>
did not think that through
<nagerst>
but why is some libs named .so and some have no file ending at all?