07:48 <+bridge> [ddnet] I'm not sure I like this :/ https://github.com/ChillerDragon/ddnet/compare/AutobanKnownBots...Learath2:tokenize 08:18 <+bridge> [ddnet] Ur commit messages xd 08:20 <+bridge> [ddnet] 08:20 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/542967811048341504/image0.png 08:20 <+bridge> [ddnet] Indendation looks weird 08:20 <@heinrich5991> Learath2: pState seems to be uninitialized but accessed in str_tokenize_nd 08:20 <@heinrich5991> I mean `*pState` 08:21 <@heinrich5991> ah nvm 08:24 <@heinrich5991> Learath2: char **rest and const char *str seem redundant 08:25 <+Learath2> heinrich5991: ? str points to the string we are tokenizing, rest points to beginning of the next token 08:26 <+Learath2> I guess you could offload keeping track of that to the user 08:26 <+Learath2> but not sure how that'd be usability wise 08:26 <@heinrich5991> also, str_in_list allocates, we usually don't do that :P 08:28 <+Learath2> Could let the user pass in a scratch buffer but is that really common? 08:29 <+bridge> [ddnet] b[bufsz ? 0 : -1] = '\0'; 08:29 <+bridge> [ddnet] What is this? 08:30 <+bridge> [ddnet] Negative index? 08:30 <@heinrich5991> it's a pointer into the buffer 08:30 <+bridge> [ddnet] Are there any playercounts charts by mod? 08:30 <@heinrich5991> so it's pointer to one before that 08:31 <+bridge> [ddnet] lol 08:31 <+bridge> [ddnet] And what Pointer is it? 08:31 <+bridge> [ddnet] Sounds like a random memory address to me 08:31 <+bridge> [ddnet] @Brokecdx- https://status.tw/?p=charts 08:31 <+bridge> [ddnet] @ChillerDragon buf moves right as you write into it 08:32 <+bridge> [ddnet] if you run out of space e.g. `bufsz == 0` then you null terminate one before 08:32 <+bridge> [ddnet] thanks 08:32 <+bridge> [ddnet] if you still have space you null terminate after 08:32 <+bridge> [ddnet] That’s weird imo 08:32 <+bridge> [ddnet] It's weird to null terminate buffers? :P\ 08:32 <+bridge> [ddnet] So it is written into the b Array? 08:33 <+bridge> [ddnet] yeah the token is written into b 08:33 <+bridge> [ddnet] At index -1? 08:33 <+bridge> [ddnet] Which gets shifted to 0 while writing ? 08:33 <+bridge> [ddnet] b is a pointer, you move the pointer right 08:33 <+bridge> [ddnet] accessing -1 means one before the pointer 08:33 <+bridge> [ddnet] So writing to 0 writes the second position? 08:33 <+bridge> [ddnet] it's *(b - 1) 08:34 <+bridge> [ddnet] @heinrich5991 how would you do in_list? 08:34 <+bridge> [ddnet] If (b[0] == '\0') 08:34 <+bridge> [ddnet] What would that give then? 08:35 <+bridge> [ddnet] @ChillerDragon when? if you ran out of buffer space then that's unspecified, it's one past the array 08:35 <+bridge> [ddnet] if you didn't run out of buffer space it's true 08:35 <+bridge> [ddnet] Hmkay 08:35 <+bridge> [ddnet] Still weird but thanks 08:36 <+bridge> [ddnet] And how did u ensure threadsafety? 08:36 <+bridge> [ddnet] not accessing globals 08:36 <+bridge> [ddnet] Nothing thread local or static 08:36 <+bridge> [ddnet] thread locals aren't thread-unsafe 08:36 <+bridge> [ddnet] Ah because I used the config variables in there I see 08:37 <+bridge> [ddnet] No it's because you used strtok 08:37 <+bridge> [ddnet] Oh 08:37 <+bridge> [ddnet] strtok has a static variable to store it's state 08:37 <+bridge> [ddnet] (so it knows how to continue tokenizing when you pass NULL) 08:38 <+bridge> [ddnet] K 08:38 <+bridge> [ddnet] Btw thanks for writing this functions 08:38 <+bridge> [ddnet] Anyways, I don't think I like the way it turned out πŸ˜› 08:39 <+bridge> [ddnet] the allocation in str_in_list annoys me particularly 17:27 <+bridge> [ddnet] :c 17:27 <+bridge> [ddnet] what happend to mystery? 17:28 <+bridge> [ddnet] inactive 17:31 <+bridge> [ddnet] :c 17:31 <+bridge> [ddnet] 17:31 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/543106483282378766/unknown.png 17:31 <+bridge> [ddnet] pro o.O 17:31 <+bridge> [ddnet] how did u get that xd 17:47 <+bridge> [ddnet] hi , how can i broadcast to all server ports in same time ? 17:50 <+bridge> [ddnet] @TcTc we use fifo for it 17:50 <+bridge> [ddnet] @TcTc fifo + cssh 17:50 <+bridge> [ddnet] @ChillerDragon it's part of github education pack, pretty cool stuff in it 17:50 <+bridge> [ddnet] cssh if u got more than 1 physical sv 17:50 <+bridge> [ddnet] oh 17:50 <+bridge> [ddnet] i should get the education pac 17:50 <+bridge> [ddnet] i got a .edu mail xD 17:51 <+bridge> [ddnet] It has a metric fuck ton of things in it, including free digitalocean credit πŸ˜„ 17:51 <+bridge> [ddnet] wow 17:56 <+bridge> [ddnet] ez 17:56 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/543112876445925417/unknown.png 18:22 <+bridge> [ddnet] yay 18:22 <+bridge> [ddnet] free 50$ on digitalocean 18:30 <+bridge> [ddnet] @Ryozuki my mail (etu.univ-grenoble-alpes.fr) is automatically detected 18:30 <+bridge> [ddnet] ok? idc 18:30 <+bridge> [ddnet] mine was detected too 18:30 <+bridge> [ddnet] i just didnt use it on github 18:41 <+bridge> [ddnet] pack cost something and do you learn github there or actual interesting stuff? 18:41 <+bridge> [ddnet] i had some github educational challanges thingy in a web dev bootcamp with offical github employees lol and it was pure trash 20:38 <+bridge> [ddnet] ahaha grenobles @ReiTW | Blizzard πŸ˜„ 20:39 <+bridge> [ddnet] @archimede67 yey 20:39 <+bridge> [ddnet] uga > all 20:39 <+bridge> [ddnet] lol