accedit not working on 64-bit Linux (Ubuntu Precise/x86_64)

Bug reports and discussion about bugs.
Post Reply
pillarsdotnet
Posts: 1
Joined: Wed Jun 13, 2012 3:53 pm

accedit not working on 64-bit Linux (Ubuntu Precise/x86_64)

Post by pillarsdotnet »

Compiled 4.4.8c for Linux (Ubuntu Precise/x86_64) and accedit was not working except for the first (administrator) account.

The following change solves the problem, but I'm not sure how or why. I assume it has something to do with the alignment of structs on some multi-byte boundary.

Code: Select all

diff --git a/src/account/account.h b/src/account/account.h
index 48de47b..cfa4cf2 100644
--- a/src/account/account.h
+++ b/src/account/account.h
@@ -37,4 +37,5 @@ struct account{
        time_t acc_laston;      /* last time this account logged on (for expiry check) */
        signed int cheeze;      /* value in gold of cheezed goods or money */
        signed int cheeze_self; /* value in gold of cheezed goods or money to own characters */
+        char buffer;
 };
C. Blue
Developer
Posts: 394
Joined: Sun Dec 13, 2009 6:28 pm

Re: accedit not working on 64-bit Linux (Ubuntu Precise/x86_

Post by C. Blue »

Thanks for reporting this! The account structure has actually changed meanwhile and should be fine in upcoming 4.4.9 release.

The important part regarding your current situation is that the struct <account> which is defined in the account editor (in src/account/account.h) and the struct <account> which is defined in the actual server code (in src/common/types.h) must be identical, so the account editor does read/write the exact same structure as the game server does. Seems there's a bug in that particular release, oops.
Post Reply