New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
file overwriting when using CudaLister #112
Comments
seems the patch from @springsunx is the reason. @springsunx , please see it. |
Is the CudaLister you are using 32-bit or 64-bit? 32-bit is prone to issues. I cannot reproduce this problem. Please provide some screenshots. The program does output
But it should be written to WINCMD.INI。 |
|
I still cannot reproduce this problem. |
I'll try a clean TC installation with only CudaLister |
Having installed TC and CudaLister recently on my new Win11 box, i just also was affected by this problem. I don't get how this issue could not be reproduced nor understood by the authors/maintainers, given @Alexey-T already directly pointed at the cause of it. Given the severity of the issue -- uncommanded overwriting of files (which is not a mere pedestrian usability issue, mind you), i am surprised and disappointed that nobody seems to have bothered to look at the code @Alexey-T already directly pointed at and study its behavior given the information in the issue report. The lack of action on such a severe issue is quite concerning to me as a user of this plug-in for several years now. As @Alexey-T already indicated the issue is originating from @springsunx's patch, more specifically the First, lets see how Lines 436 to 443 in 0e1425a
The F3 key is pressed (for invoking the Find dialog), and the current text selection in the CudaLister is checked. If the current text selection is not empty, And that's what Lines 379 to 404 in 0e1425a
Note how in the latter half of the function it attempts writing to a an existing file whose name/path is denoted by the string If the TC INI file has already search terms in its All you need to do to successfully reproduce the error is to make sure that the zero-indexed (i.e., the first) entry in the So, to make the reproduction steps really clear, minimal, and perfectly reproducible:
It's repeatable and reproducible every time (i mean, how could it not, looking at the (Now, in case the first search term in TC's Hope this helps. The handling of this issue has given me pause however. Personally and sadly, i am not going to use CudaLister anymore, or perhaps i will stick with an older version; i don't know yet. This report of a severe issue should have gotten more attention, more than just @Alexey-T pointing out the culprit and then apparently nobody looking at and nobody actually verifying the behavior of the code base. Given the severity of the issue, the apparent inaction following the report is not something i am comfortable with, as little of relevance this possibly is to anyone but me. |
Addendum/side note: While the function |
Hello, Thx |
I can't say with certainty. I am a user myself, and so far have not yet tested older CudaLister versions. |
I will try to reproduce this soon (this month maybe). sorry for delay. |
let's test this fixed beta: |
Thx @Alexey-T , I'll try it |
thanks for the lightning-quick follow-up. I tested the 64-bit version of wlx_cudalister_1.8.2.0.zip. The problem is fixed, as far as i can tell. (I haven't tested the 32-bit version nor with the INI-file redirects, though.) Would you perhaps also fix the implementation of Just in case it is of interest, i have taken your modified function GetLastFindText : string;
var
TCIni, S: string;
begin
TCIni := GetEnvironmentVariable('COMMANDER_INI');
if TCIni='' then
begin
Result := '';
Exit;
end;
with TIniFile.Create(TCIni) do
try
S:= ReadString('SearchText', '0', '');
if S<>'' then
begin
Result := S;
Exit;
end;
S:= ReadString('SearchText', 'RedirectSection', '');
if S='' then
S:= ReadString('Configuration', 'AlternateUserIni', '');
finally
Free
end;
if FileExists(ExpandEnvironmentVariables(S)) then
begin
with TIniFile.Create(ExpandEnvironmentVariables(S)) do
try
S:= ReadString('SearchText', '0', '');
finally
Free
end;
end;
Result := S;
end; |
thanks for your help. why i did not answer for 3 months? see the date of your 1st post. it is very busy day in Ru. it was some coup in the military group in Ru. |
I am not the OP :-) |
For my part everything is ok, I don't usually ask for many explanations to those who selflessly contribute to the community :-) Thanks |
When I use CudaLister with a file and perform a search, the contents of the file are replaced by some sort of INI file.
Steps to reproduce the problem:
More strange is that, sometimes, the file replaced is the backup file, not the file where I'm using CudaLister.
Sometimes, I have to make this steps 2 times to see the replacement.
The text was updated successfully, but these errors were encountered: