RemedyBG 0.3.5.1

A set of improvements and bug fixes is now available to download from the usual place. Thanks for all the feedback everyone!

Improvements
* Support Unicode strings output with OutputDebugStringW.
* Now show string summary for char[0] as if it were of type char*.
* The "attach to process" flow is now possible without a mouse.
* Can now select multiple source files in file open dialog.
* Now allow subtraction of pointers of differing types as long as the underlying type has the same size.
* Longer string preview shown when not part of an aggregate summary.

Bug fixes
* Fixed formatting of address value in address breakpoint dialog box
* Fixed a potential hang when inspecting a global variable which occurs in two or more translation units. In this case, we render a synthetic var with the fields name __g0, __g1, and so forth, corresponding to each instance of the global variable.
* Fixed problem with Reattach to Process wouldn't work in some cases.
* Using space in search term no longer causes a case-sensitive search.
* Properly format negative signed character literals.
* Fixed problem where enums couldn't be used as array indices.
* Fix to allow manipulating diassembly view settings (show address/code bytes) after target process is stopped.
* Fixed evaluation of struct addresses passed by value that were less than eight bytes and not a power of two.

Edited by x13pixels on Reason: Initial post
Thanks !
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <string>
#include <stdio.h>
#include <iostream>
#include <fstream>

using namespace std;

class FTestFile{
    public:
    FTestFile() {}
    FTestFile(string file_path);
    const char* GetBuffer() const;
    
    private:
    ifstream stream;
    char buffer[1024];
};

FTestFile::FTestFile(string file_path) : stream(ifstream(file_path.c_str())) {
    memset(buffer, 0, 1024);
    stream.read(buffer, 1024);
}

const char* FTestFile::GetBuffer() const {
    return &buffer[0];
}

int main(int argc, char** argv) {
    FTestFile f("D:/game_math/content/Testing_File.txt");
    
    printf("%s\n", f.GetBuffer());
    return 0;
}


Debugging main variable "f" causes hang indefinitely. I think it has to do with "ifstream".

Edited by Kyle on
Vawx
Debugging main variable "f" causes hang indefinitely. I think it has to do with "ifstream".


Appreciate the test case. I'll get this taken care of.
x13pixels
Vawx
Debugging main variable "f" causes hang indefinitely. I think it has to do with "ifstream".


Appreciate the test case. I'll get this taken care of.


Updated release with a fix for this is available for downloads as 0.3.5.2.

Bug fixes
* Fixes one off in handling of OutputDebugStringW
* Fixes infinite loop when obtaining field information for a type that contains a virtual base class