Fix follow pointer
This commit is contained in:
parent
767bc71cb5
commit
029bb4b14e
@ -3,7 +3,7 @@
|
||||
<app>
|
||||
<name>TCP Gecko</name>
|
||||
<coder>BullyWiiPlaza, wj44, dimok, Chadderz, Marionumber1</coder>
|
||||
<version>2.3</version>
|
||||
<version>2.4</version>
|
||||
<short_description>WiiU RAM Hacking</short_description>
|
||||
<long_description>A memory editor that does magical things to your games. In order to develop and apply real-time
|
||||
cheats use JGecko U.
|
||||
|
@ -84,7 +84,7 @@ struct pygecko_bss_t {
|
||||
#define ONLY_ZEROS_READ 0xB0
|
||||
#define NON_ZEROS_READ 0xBD
|
||||
|
||||
#define VERSION_HASH 0x3AC9444B
|
||||
#define VERSION_HASH 0xC9D0452
|
||||
|
||||
ZEXTERN int ZEXPORT
|
||||
deflateEnd OF((z_streamp
|
||||
@ -1074,7 +1074,7 @@ static int processCommands(struct pygecko_bss_t *bss, int clientfd) {
|
||||
break;
|
||||
}*/
|
||||
case COMMAND_FOLLOW_POINTER: {
|
||||
ret = recvwait(bss, clientfd, buffer, 8);
|
||||
ret = recvwait(bss, clientfd, buffer, sizeof(int) * 2);
|
||||
ASSERT_FUNCTION_SUCCEEDED(ret, "recvwait (Pointer address and offsets count)")
|
||||
|
||||
// Retrieve the pointer address and amount of offsets
|
||||
@ -1082,7 +1082,7 @@ static int processCommands(struct pygecko_bss_t *bss, int clientfd) {
|
||||
int offsetsCount = ((int *) buffer)[1];
|
||||
|
||||
// Receive the offsets
|
||||
ret = recvwait(bss, clientfd, buffer, offsetsCount * 4);
|
||||
ret = recvwait(bss, clientfd, buffer, offsetsCount * sizeof(int));
|
||||
ASSERT_FUNCTION_SUCCEEDED(ret, "recvwait (offsets)")
|
||||
int offsets[offsetsCount];
|
||||
int offsetIndex = 0;
|
||||
@ -1091,7 +1091,6 @@ static int processCommands(struct pygecko_bss_t *bss, int clientfd) {
|
||||
}
|
||||
|
||||
int destinationAddress = baseAddress;
|
||||
if (isValidDataAddress(destinationAddress)) {
|
||||
// Apply pointer offsets
|
||||
for (offsetIndex = 0; offsetIndex < offsetsCount; offsetIndex++) {
|
||||
int pointerValue = *(int *) destinationAddress;
|
||||
@ -1108,13 +1107,10 @@ static int processCommands(struct pygecko_bss_t *bss, int clientfd) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
destinationAddress = -1;
|
||||
}
|
||||
|
||||
// Return the destination address
|
||||
((int *) buffer)[0] = destinationAddress;
|
||||
ret = sendwait(bss, clientfd, buffer, 4);
|
||||
ret = sendwait(bss, clientfd, buffer, sizeof(int));
|
||||
ASSERT_FUNCTION_SUCCEEDED(ret, "recvwait (destination address)")
|
||||
|
||||
break;
|
||||
|
BIN
tcpgecko.elf
BIN
tcpgecko.elf
Binary file not shown.
Loading…
Reference in New Issue
Block a user