Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Bugs in 1.2.2.1
#1
Always good to see updates and new features, Eliot, thanks. I've found a few more bugs you might want to be aware of Smile

UE Explorer doesn't seem to close the file once it has read it into memory, preventing other programs from modifying it.

With Developer's build 1.2, it was possible to edit the file in another program while the "Hex Viewer" window in UE Explorer was still open; this is no longer possible in 1.2.2.1. Although, unfortunately in both versions it wasn't/isn't possible to edit a file while the Object/Tokens view is open. It would be great if UE Explorer closed/unlocked the file so that other programs could edit it, even with the Object, Tokens and Buffer views open. I'm guessing it doesn't need to read the file each time a different class/function is viewed, as it would be much faster loading it from memory?

Dev build 1.2 only required you to close the tab for the file to close/unlock the file, whereas in 1.2.2.1, you have to close UE Explorer completely for it to release the file. This might be obvious given the above details, but the memory usage doesn't decrease once closing the tab for the file.

In Dev build 1.2, if the virtual size of a function was too big, the function name in UE Explorer would be highlighted in red, indicating a problem. This feature no longer seems to occur in 1.2.2.1. Similarly, if the virtual size was too small, Dev build 1.2 would display an error message and not decompile the function.
"Exception Occurred
Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index"

This error now seems to be handled in 1.2.2.1 and decompiles the function, but there is now no indication that there's a problem with the virtual size.

The links on the About screen don't seem work for your website or your donate page (no page even opens), but the View Licenses local file link does work. I'm using FireFox 18.0.1. I don't think it's my security software blocking it, but haven't looked into it further.

Thanks again and as always, keep up the great work Smile
Reply
#2
Hey, bokauk

Thanks for reporting these issues, it's a great help!

I definitely did not know of these issues, I have added them to the tracked issues at https://bitbucket.org/eliotvu/ue-explorer/issues

1. Yes it doesn't need the stream to be open(this is a bug Smile) objects are already streamed to the memory upon package loading but with the exception of objects whom are unknown or only deserialized on demand which is either triggered by explicit programmatic tasks or viewing the object in the UI, so for this reason the file stream is left open although I definitely should have made it close and re-open on demand. So this was sort of expected except for not closing on tab closing.

2. I believe this is indicated in the log.txt not sure if it works in the public build. Regardless I'll add an identification for it.

3. Weird, I even checked 1.1 which has the same bug, I swear I've opened them successfully on debug builds several times, oh well will have a look at the source of this bug.

No problem. Thanks for reporting these issues!
Reply
#3
Glad I can help in some way and thanks for looking into those issues Smile

I've got a few other minor suggestions:

4. For the "Dump Bytes" feature, change the delimiter to a space " ", rather than a hyphen "-". That would make it possible to copy/paste it straight into hex editors, instead of having to perform a search and replace on it first. Perhaps have an option to set the delimiter in the options page?

5. Display the full path of the file in "Recently Opened". If I've opened two files with the same name in different locations (originals and modded files), there's no way of knowing which is which.

6. Allow multiple instances of UE Explorer. I'm not sure if this is intentionally disabled or a bug.

7. Allow the UE Explorer window to be resized smaller.

Just minor/trivial things, but they often crop up as an inconvenience Smile
Reply
#4
(02-10-2013, 07:07 AM)bokauk Wrote:  Glad I can help in some way and thanks for looking into those issues Smile

I've got a few other minor suggestions:

4. For the "Dump Bytes" feature, change the delimiter to a space " ", rather than a hyphen "-". That would make it possible to copy/paste it straight into hex editors, instead of having to perform a search and replace on it first. Perhaps have an option to set the delimiter in the options page?

5. Display the full path of the file in "Recently Opened". If I've opened two files with the same name in different locations (originals and modded files), there's no way of knowing which is which.

6. Allow multiple instances of UE Explorer. I'm not sure if this is intentionally disabled or a bug.

7. Allow the UE Explorer window to be resized smaller.

Just minor/trivial things, but they often crop up as an inconvenience Smile

4. I've noted this.

5. Noted as well.

6. Noted as well. Though this is a feature!

7. Maybe, anything smaller looks oddly, UE Explorer is designed to fit within the minimum size.

Also about streams being not closed, I have done some work on this although the big issue I'm having is that I'm not having this problem at all Oo all hex-editing tests(etc) seem to have no issue when UE Explorer has it open so I can't really know for sure if my solution fixes it for you, although for some reason it's still eating memory after closing so I assume it ain't fixed. I even tried to use some memory analyzers but well I fail at using those tools they seem quite confusing.

Reply
#5
After looking at the (decompiled) code for UELib, I suspect the stream is still open because it's still in UELib's package cache.
Reply
#6
(05-06-2013, 06:07 AM)Orvid Wrote:  After looking at the (decompiled) code for UELib, I suspect the stream is still open because it's still in UELib's package cache.

I'm not using the packages cache list Confused

According to memory analyzers the issue is the Package Explorer tab itself, it is still holding a reference to some delegated events which in turn keeps the tab referencing the package as well. The problem is though that I have debugged this and it seems the closing or dispose events are never triggered and I don't really know why not even if I call it explicitly somewhere it still doesn't. At the moment I'm not working on anything related to UE Explorer so this bug is postponed until I start on a new version, whenever that may be I don't know!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)