Also restructures the pom.xmls to put the modules in the top level
so we can order them to have the test plugins build after them.
Change-Id: I2f0e4ebd252791fb8844cdf0f635d574946207aa
- This commit is still needed to allow CDT Sonar job to run
so that features that have same name as plug-ins
will be distinguishable by Sonar job
Change-Id: I3eb3f3cf94d5f4338d72c5d19d0baf2f7506c388
On shutdown of a debug session the launch files are written, often
(normally) with no changes. This commit prevents unneeded deltas
on the launch files and prevents a lot of the callbacks of launch
configurations changing. This also ameliorates the case in Bug 500988.
Change-Id: Iddbd9c5c5695dcd2d255cbc761a48316fa5acbb1
When the Source Not Found Editor opens with only an address, the message
is changed, to confuse the user less.
Change-Id: I1dcc9fae80d20975b00d2d356469ddda8c2d8d2b
Signed-off-by: Yannick Mayeur <yannick.mayeur@gmail.com>
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
Also-by: Pierre Sachot <sachot.pierre@laposte.net>
Also-by: Jonah Graham <jonah@kichwacoders.com>
I removed an if statement where the two compared items always have the same
value thus not executing the code that updates the editor.
Change-Id: I3fb43a1c84d06ce6dc92e95f6c745a4b23977f2d
Signed-off-by: Yannick Mayeur <yannick.mayeur@gmail.com>
You now have more precise options for the Source not
Found Editor.
Change-Id: I7391e50c0a9bf7fc712a45d1946e5a24e91c4991
Signed-off-by: Pierre Sachot <sachot.pierre@laposte.net>
Signed-off-by: Yannick Mayeur <yannick.mayeur@gmail.com>
Also-by: Pierre Sachot <sachot.pierre@laposte.net>
Also-by: Yannick Mayeur <yannick.mayeur@gmail.com>
We added a checkbox to disable the source not found editor and an option
in preferences for adding it again.
Change-Id: Icc7a21cd14ea81e53517d0b3c420de0927335ed4
Also-by: Yannick Mayeur <yannick.mayeur@gmail.com>
Signed-off-by: Pierre Sachot <sachot.pierre@laposte.net>
Reformatted file, added missing braces and removed "non-Javadoc" comments.
This file had suffered particularly badly from mixed spaces and tabs
in a single file, with some lines having both on the same line.
Change-Id: I0bff49effa0225cb6409547d8daa9dbf9c22e1b9
Those features have the exact same id and groupid than a plugin
which throws off SonarQube with:
"Two modules have the same id: 'org.eclipse.cdt:org.eclipse.cdt.util'.
Each module must have a unique id."
In the pom.xml, we can specify a different groupid which resolves the
problem. Alternatively, the feature id could have been changed but that
would break upgrades.
Change-Id: Ib2912ad854a3af431b96f89a6ead1bcb6d06ba60
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
Allow disassembled code to be displayed even while a running thread is
selected. Switching from a suspended to a live thread does not clear
the view. To initially get the disassembled code, a suspended context
is required.
Move the check for a frame context to the backend, allowing extenders to
provide custom symbol lookup by overriding
DisassemblyBackendDsf#evaluateAddressExpression. Overriding this method
to provide custom lookup also allows fetching disassembled code from a
live thread.
Edit: Make Disassembly message consistent so that prior to selecting a
suspended context the view shows 'No Debug Context'. After selecting a
suspended context disassembly is shown for all nodes except launch.
Change-Id: I42c54b179b5dacc16f7a5e04a83ddb973ccc6dde
Signed-off-by: Stephen Flynn <stephen.flynn@dell.com>
Generified, some lamnda conversions and some non-javadoc removal.
Change-Id: Ibf0493917ac3da7531de1ca591a9bfdc250ddf2a
Signed-off-by: Alexander Kurtakov <akurtako@redhat.com>
This removes a lot of pom.xml from the source tree. This is using the
"POM-less" Tycho functionality.
See
https://wiki.eclipse.org/Tycho/Release_Notes/0.24#POM-less_Tycho_builds
One advantage of this is that you do not need to update the version in
the pom.xml when you change it in the MANIFEST.MF because the pom.xml is
automatically generated. This also reduces a lot of the duplicated
information and pom.xml repetition.
- Maven 3.3 and up is required.
- Only eclipse-plugins and eclipse-features can be pom-less.
Repositories, target and others still have pom.xml.
- New parent poms are added because a parent is necessary directly one
level above the plug-in/feature that will have its pom generated
- Some test plug-ins had to be renamed .test -> .tests because it's
required so that it detects that it's a test plug-in
- Some suites were renamed so that they all use the same consistent name
"AutomatedIntegrationSuite"
- Profiles were added for the more common test configurations. They are
activated by the presence of simple .properties files that only serve to
activate the correct profile. The profiles:
- One for UI tests (UI present and start in UI thread)
- One for SWTBot tests (UI present and do not start in UI thread)
Other test plug-ins that are too different are kept intact and still
have
a pom.xml
- Fragments are kept intact since they all have different target
platform configurations
Change-Id: I9d73380eb766f547830c552daf08053a30b1845c
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
This commit removes explicit source features and has tycho create them
automatically, along with all other source features that were not
previously defined. The logic to auto-generate is in the root pom.xml
For all pre-existing source feature, the name presented to the user has
been changed to use the default name used by Tycho, which is "Developer
Resources". This will provide a more standard user-experience with
respect to other source features built by Tycho.
Existing SDK features are kept for backwards compatibility.
All the names of the auto-generated source features that replace an
existing source feature have stayed the same except for the
'testsrunner' feature; for that one name change, a p2.inf file is added
to allow upgrading from the old named feature to the new named feature.
Change-Id: Ie632e798c93898fd828f88df4983fc43e2749d22
This adds a new service, GDBFocusSynchronizer, that helps keep the
internal GDB selection and the Debug View selection synchronized.
Change-Id: I021b3f65d61e82f6971bdb9232369b6fdf58ea5b
In non-stop mode, when the last thread of a process is resumed, the
corresponding process node icon, in the Debug View, is updated to the
"running process" one. However the node was not being automatically
refreshed, and so still showed the previous "suspended process" icon.
This fix adds the necessary Delta to refresh the process node when a
IResumedDMEvent is received.
Change-Id: Ie7d2b6aef9ae7f5906e4b54470f74ee238e13ef5
This will allow us to eventually take action (like prepare the console)
as soon as the user adds a new inferior using the gdb console and the
command add-inferior.
Change-Id: I24ff380b8442de6a88e3caa0fe6832e90e83ac99
Solaris Sparc support was removed in SWT therefore it cannot be
supported by CDT anymore.
Change-Id: Ic40f55632023fd77fd164d3e48b5ca06835c3a31
Signed-off-by: Marc-Andre Laperle <marc-andre.laperle@ericsson.com>
When a viewportChanged event and a setActive event arrived at the same
following a debug context change the two event handlers would cancel
each other out.
Change-Id: I07a8d0ff46e4ea4f4ab682a5311650fca021d75b
Signed-off-by: Jonah Graham <jonah@kichwacoders.com>
Eclipse warns if a String literal does not have a `//$NON-NLS-<n>$`
entry at the end of the line. However, for historic or formatting
reasons, many such occurrences in the CDT source have an intermediate
whitespace, such as `// $NON-NLS-<n>$`
Fix these so that the whitespace is removed between the // and $
characters.
Change-Id: Idc12398fe6e9d619af1d0b1b73fb8b6180da223c
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
When using a `StringBuilder` or `StringBuffer` to create a string message,
using implicit string concatenation inside an `.append()` call will
create a nested StringBuilder for the purposes of creating the arguments,
which will subsequently be converted to a String and then passed to
the outer StringBuilder.
Skip the creation of the intermediate object and String by simply
replacing such calls with `buffer.append(a).append(b)`.
Where values are compile time String constants, leave as is so
that the javac compiler can perform compile-time String concatenation.
Ensure that NEWLINE isn't appended in such a way since it is not
a compile time constant `System.getProperty("line.separator")`
Change-Id: I4126aefb2272f06b08332e004d7ea76b6f02cdba
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
There are many opportunities for replacing `StringBuffer` with
`StringBuilder` provided that the type isn't visible from the
public API and is used only in internal methods. Replace these
where appropriate.
Change-Id: Ic2f50c5b6f3c3a4eae301bb3b40fb6faed235f79
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
In many cases a String's empty status is tested with `.equals("")`.
However, Java 1.6 added `.isEmpty()` which can be more efficient since
it compares the internal length parameter only for testing. Replace
code using the `.isEmpty()` variant instead.
Some tests for `"".equals(expr)` can be replaced with `expr.isEmpty()`
where it is already known that the `expr` is not null; however,
these have to be reviewed on a case-by-case basis.
Change-Id: I3c6af4d8b7638e757435914ac76cb3a67899a5fd
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
Occurrences of `new String()` have been replaced with the equivalent `""` and
additional NON-NLS tags have been inserted in where appropriate.
Change-Id: I54cf71dcd0d5a92a675a71166d66949533de502b
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
Using `new Integer` and other wrapper types such as `new Character` results in
potential extra heap utilisation as the values are not cached. The built-in
`Integer.valueOf` will perform caching on numbers in the range -128..127 (at
least) using a flyweight pattern. In addition, parsing `int` values can be done
with `Integer.parseInt` which avoids object construction.
Adjust tests such as `"true".equals(expr)` to `Boolean.parseBoolean(expr)`.
Change-Id: I0408a5c69afc4ca6ede71acaf6cc4abd67538006
Signed-off-by: Alex Blewitt <alex.blewitt@gmail.com>
When using memory spaces, a backend may sometimes qualify an address
to specify the memory space to which the address belongs. However, to
minimize impacts, the memory space qualifier may not always be present.
In such cases, the address is implied to belong to the "default" memory
space.
DSF-GDB currently has no means to know what is the "default" memory
space to apply in such cases.
This change introduces a new API to request the default memory space
from the memory service.
Change-Id: Icea87543b8529756aee92c6d2af95fb936f5fb9c
When an address is resolved from an expression, the resulting address
may carry a memory space provided by the backend to associate
this address to a particular memory space.
The current interface for the memory space service (e.g.
IMemorySpaces2) can be used to parse the memory space contained in the
expression.
This update adds:
1) A new API method to resolve the memory space of an
IExpressionDMAddress instance
2) The use of the memory space service to attempt to resolve the memory
space.
Note: if there is no memory space service, the memory space defaults to
an empty string, which does not affect the default behaviour i.e.
when memory spaces are not used.
Change-Id: Idfe5669b26f84ee4e3e78f96f229ced75e6ec5c3
Before calling setEnabled on the ToolItem check if it is disposed. If
thats the case, do nothing, else enable the ToolItem.
Bug: 487920
Change-Id: I1f7b9e0da7f07b2b49e3176e162b9ffb7968439b
Signed-off-by: Martin Schreiber <m.schreiber@bachmann.info>