Age | Commit message (Collapse) | Author | Files | Lines |
|
Rationale: By the standard, cstdint guarantees these basic types
in std::, but *may* put them into the global namespace.
By including stdint.h directly, we guarantee that these types are
in the global namespace. stdint.h is
also a C++ standard header guaranteed as part of the C compatibility
support, thus toolchains should support this.
The proper(tm) way of going about this would mean either prefixing
[u]int[0-9]*_t with std:: everywhere where they are used (a chore)
or having a proxy header that includes cstdint and around 50
using statements. The latter sounds to me like a good approach for
toolchains that do not provide stdint.h and do not pollute global
namespace. If such a toolchain exists in the wild.
See discussion at
https://stackoverflow.com/questions/13642827/cstdint-vs-stdint-h
In practice, my toolchain's (gcc 14 on GNU) cstdint includes stdint.h
then drags those types into std:: as well.
|
|
2024-08/01/#Debug.log:[14:25:43] Wrong actual or planned inbound packet
size!. Packet id: 205(0xcd), Planned size: 3, Actual size: 6
2 bytes packet id + 1 byte flag = 3
2 bytes packet id + 4 byte flag (wrong) = 6
Squashed with:
* Separate processKickAck handler for eathena
* Move ea's adminrecv and its sole handler processKickAck into TMWA
namespace
* Revert "Fix wrong read of clif_GM_kickack packet"
This would break TMWA packet processing, as @thorbjorn pointed out.
This reverts commit efe43bac4de90b3e427d985b77cb3dd3206bcf9d.
****
mana/plus!148
|
|
Pointless change, I know.
****
mana/plus!115
|
|
****
mana/plus!114
|
|
Squashed with:
* Appease linters + more reformat
* Further improve skill error handling and messages.
24751878 "Improve skill error messages." added trailing dots only on the
second branch. This adds missing dots on the first one as well as
compacts the logic.
****
mana/plus!93
|
|
& shaves ~5KB from debug binary.
previd=""; while read -r line; do if [[ $line =~ .*"msg.read"[^\"]*"\""([^\"]*).* ]]; then id="${BASH_REMATCH[1]}"; if [[ "$id" == "$previd" ]]; then printf "%s\n" "$line"; fi; previd="$id"; fi; done < <(grep -r 'msg.read.*' src/net/)
****
mana/plus!91
|
|
How to reproduce: spam emote then quickly switch char
Thread 1 "manaplus" received signal SIGSEGV, Segmentation fault.
SkillDialog::getSkill (this=0x0, id=id@entry=1) at gui/windows/skilldialog.cpp:805
0 SkillDialog::getSkill (this=0x0, id=id@entry=1) at gui/windows/skilldialog.cpp:805
1 EAthena::SkillRecv::processSkillFailed (msg=...) at net/eathena/skillrecv.cpp:302
...
****
mana/plus!92
|
|
This has the side effect that now #Debug history is also loaded.
****
mana/plus!84
|
|
What happened:
1) herc evol sends 0x100 as packet ID offset
2) 0x100 is added to 0x0062 of SMSG_CHAR_PASSWORD_RESPONSE
3) SMSG_CHAR_PASSWORD_RESPONSE is then inserted into 0x162
slot of packet map, shadowing SMSG_GUILD_SKILL_INFO
4) on guild lvl-up, server sends this in SMSG_GUILD_SKILL_INFO
5) ManaVerse exits in confusion.
Note 1: due to popupmenu paste not working in change password dialog, tested password change only with invalid old password, which worked (opened error dialog instead of client exiting).
Note 2: Some packet handlers are bound using &Ea::LoginRecv prefix, this one had &LoginRecv and this was kept this way (uses vtable lookup?).
~~TODO: SMSG_CHAR_PASSWORD_RESPONSE seems to be something about password changes, but I could not find this packet either in TMWA or herc. Still, I need to test if these still work on all active servers~~ Tested.
Squashed with:
* Fix exit on password change, too
* Fix guild lvl-up packet parsing causing client exit in ML
****
mana/plus!81
|
|
See #73 for discussion
Squashed with:
* Fix mana pearl showing in arrows slot in Classic
* Fix off-by-one. Was causing Old Towel to render in torso slot in ML.
****
mana/plus!78
|
|
See merge request mana/plus!64
|
|
No server in use still sends that field.
****
Approved-by: Jesusalva Jesusalva <jesusalva@themanaworld.org>
|
|
****
Approved-by: Jesusalva Jesusalva <jesusalva@themanaworld.org>
Approved-by: Thorbjørn Lindeijer <bjorn@lindeijer.nl>
|
|
Co-Authored-By: jak1 <jak1@themanaworld.org>
Co-Authored-By: jesusalva <jesusalva@themanaworld.org>
Co-Authored-By: Fedja Beader <fedja@protonmail.ch>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|