Community
Participate
Working Groups
Dear Team,
Dear Team, I request you to make the following changes : (a) Constructor as public in MIInferior.java (b) To add a setter for MIInferior in the file MISession.java (c) To handle the NPE condition for line & parser in the setPrompt method of RxThread.java
Created attachment 27210 [details] Patch for my request I have created a patch for the above request. The patch was created for CDT_3_0 version. Kindly accept the patch
Comment on attachment 27210 [details] Patch for my request This patch is invalid. We will re-submit the patch ASAP.
Created attachment 27384 [details] Valid Patch I am submitting a valid patch now. Kindly accept the patch.
Created attachment 41710 [details] Patch is created after checking out CDT_3_0_1_RC1 version from cvs , and overwriting few files . Please find the attached patch,I have checked out CDT_3_0_1_RC1 version from cvs , overwritten few files and created the patch. The changed file names and changes made are:: File Name Changes Made CValue.java Fix of Bug#: 108653 Register displays "." instead of "0" MIInferior.java Made the constructor public MISession.java Setter method for MIInferior instance RxThread.java Null check in setPrompt method ModulesView.java Fixed Bug " Eclipse crashes while expanding the tree in Modules View " CWordFinder.java Fixed Bug "Balloon evaluation does not seem to work correctly for struct.field, if you point at field, you get an error, So changed findWord() method" BinaryParserBlock.java Changed the access specifier of variables configMap and initialSelected to protected
I'll create the separate entries for each problem to decide on it one by one.
The modules view problem has been fixed for 3.0.1. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=113114.
Changing the access modifiers from private to public or protected means that we take a responsibility to keep these methods and fields unchanged in the future. It would limit our ability to modify the code. That's the main reason why we are so reluctant when it comes to make the implementation details public. Please, provide a justification for each case. Maybe we'll find a better solution if we know why do you need access to these objects. And please submit an individual entry for each unrelated problem.
Regarding "Balloon evaluation does not seem to work correctly for struct.field, if you point at field, you get an error, So changed findWord() method" see my comment in https://bugs.eclipse.org/bugs/show_bug.cgi?id=40101.
"Null check in setPrompt method": Can you please describe the case when either "line" or "parser" variables can be null?
I have closed the BUG 113114 & hence reject the Modules View patch Thanks, Bala
Balloon evaluation patch seems to be wrong. Is there a way to fix this ? Are you planning to fix this bug. - Bala
>>"Null check in setPrompt method": Can you please describe the case when either >>"line" or "parser" variables can be null? I think this is very specific to HP GDB. The first time when we make a GDB command request, the line / parser is null. Hence, we did this null check. This might be a defensive check in case of other GDB but for HP GDB, this looks to be a mandatory step. What's your opinion on this ? - Bala
We wanted to update the interrupt() of MIInferior so that the remote processes started by RemoteGDBDebugger can be killed on an interrupt signal. To do this, we need to extend the MIInferior as RemoteMIInferior. However, MIInferior construct was not public / protected & so we need to change the access modifier. On similar lines, we wanted to extend MISession as RemoteMISession and set the inferior as RemoteMIInferior. The setter method was not available in MISession, though the getter method was available. Hence, we have added a setter method.
(In reply to comment #12) > Balloon evaluation patch seems to be wrong. Is there a way to fix this ? Are > you planning to fix this bug. > - Bala We simply don't have tools to verify which expresion in [] is eligible to evaluate and which is not. It could be something like a[foo()], where foo is a function, evaluation of which will change the state of the program being debugged.
(In reply to comment #13) > I think this is very specific to HP GDB. The first time when we make a GDB > command request, the line / parser is null. Hence, we did this null check. This > might be a defensive check in case of other GDB but for HP GDB, this looks to > be a mandatory step. What's your opinion on this ? > - Bala The situation when the value "line" or "parser" is null is not supposed to happen in our implementation. I thought it might be a bug somewhere in our code. If it's a HP specific issue, I have no problem. Fixed.
(In reply to comment #14) > We wanted to update the interrupt() of MIInferior so that the remote processes > started by RemoteGDBDebugger can be killed on an interrupt signal. To do this, > we need to extend the MIInferior as RemoteMIInferior. However, MIInferior > construct was not public / protected & so we need to change the access > modifier. > On similar lines, we wanted to extend MISession as RemoteMISession and set the > inferior as RemoteMIInferior. The setter method was not available in MISession, > though the getter method was available. Hence, we have added a setter method. OK, I have submitted the patch, though there is probably a better way to do it. Using factory methods, for example. Just don't have a time now and don't know your requirements for MIInferior. Please, verfiy.
Thanks Mikhail for your help in this regard. Bala