As the memory browser configuration is preserved in the launch
configuration file as an indented serialized XML string, the string will
contain the result of System.lineSeparator(). As the launch
configuration file can be shared among developers with different
platforms, there is a risk that the launch configuration file is always
modified although there is no real modification, just line endings.
To avoid this scenario, always save the XML string without any
indentation or line endings.
Change-Id: I94497a924f7aa5a881ac6a32f146d2cbceb6324f
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Remove all equalIgnoreCase and equal with uppercasing for environment
variables
Change-Id: Ic15974b5fb62413c7b1826ced544ff6d4a8eba2f
Signed-off-by: jantje <eclipse@baeyens.it>
The Windows registry can be checked for keys that may not exist.
In order to avoid logging an exception that the entry is missing when
it's not critical that the entry do exist, the method should just return
null and let the caller handle if it's critical or not that the entry
exists. To easily debug situations where the entry is supposed to always
exist, the trace symbol
"org.eclipse.cdt.core.native/debug/win32/registry" can be set to "true"
and the exceptions will be logged in any case.
Change-Id: I6603cbe363ebecd357fa44c41fb1a26c6345dd70
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Sets the pattern to the default of upcoming tycho 2.0 in advance.
Signed-off-by: Martin Weber <fifteenknots505@gmail.com>
Change-Id: I31b3fc733d0cb888fbf6f566995ce2043f6cd621
On Linux and mac, a simple int will do for accessing streams (file
descriptor).
On Windows, a HANDLE is used. This is in reality a pointer and on 64
bit JVM, the pointer will not fit in an int. To not force a change to
the API everytime a different platform has a different requirement
for accessing streams, use a common interface and specific classes
that is known by the native part. The java part of the function
block should just pass the object back to the native code when
needing to reference an open stream.
Change-Id: Ibc3ff5c85735dac6a0ce8e9a1f25b839d7e9aab9
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
When searching the PATH environment variable, only accept resources of
type "file" and that are executable. Any directories on the PATH is
silently ignored by shells and so should also CDT do.
Change-Id: Ia7cfd1b0b61d59602994528f0fb2af7fee93d946
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
The javax.xml.transform.Transformer as used in CDT did not fully
indent, despite INDENT=yes being set (See Bug 286751).
However in Java 11, INDENT=yes started doing "more", so to maintain
compatibility with how .cproject and others are formatted, turn
off INDENT=yes and rely solely on XmlUtil.prettyFormat and the
related workarounds in xmlutil.
Change-Id: Icec04cfd3f9f1290593cff8b15b398b41c9d932a
Note: the Windows dll is not actually modified, apart from the embedded
date stamp to match the date of the jni/ modification
Also-by: Liviu Ionescu <ilg@livius.net>
Change-Id: Ice3d5e7ae5999a0e4d1866e76e515a91e30e9f11
This can be used when walking the ICElement tree and wanting
to act after visiting all children of an element and the element itself.
For example, I use this to collect information about whether or not
all files in a folder are excluded or not and when "leaving" the source
container, I can then act on whether or not the
source exclusions can be simplified by excluding the whole folder.
Without the leave() method, one would have to do cumbersome and
error-prone path checking when visiting each node to detect if we
have left a parent node.
Change-Id: Iad480fe18f28db1477d5d527ac51c320f6d280b7
Signed-off-by: Marc-Andre Laperle <malaperle@gmail.com>
There is no need to have custom JNI implementation any more in java to
be able to access native functions. JNA solves this just fine with the
benefit that the code is easier to debug and maintain.
Change-Id: Ia9d36981cb10fa7348bf0a5f0549b3e96bd4c982
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
As Eclipse only support 64-bit JRE on Windows, some legacy support has
been dropped.
* Dropped support for listing 16-bit applications using NTVDM.EXE
process (was only supported on 32-bit WinNT based systems).
* Dropped support for listing processes on non-WinNT based systems
(Windows 9x/ME is 32-bit only).
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Change-Id: Ib827de6510a342c0de5c6eaca68a944b2f1d641e
When git is configured to honor executable bit for files
(core.fileMode=true), the .exe and .dll files in the
repository needs to have execute bit set to be able to run
Eclipse in runtime mode on Windows.
For more details:
https://git-scm.com/docs/git-config#Documentation/git-config.txt-corefileMode
"Git for Windows" does not appear to have this problem,
but at least Cygwin does.
Change-Id: I4c164f6d99219d461c301189f101ccbf63debb50
Signed-off-by: Torbjörn Svensson <azoff@svenskalinuxforeningen.se>
Hide the value of extension point identifier
"org.eclipse.cdt.core.templateProcessTypes" with dedicated type. After
moving to another bundle we will preserve the identifier value for
compatibility.
Change-Id: I8dbca52f1223e8751ebb5ac7844845c30a1f0266
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
This removes use of internal API RenameResourceProcessor and removes
copying of code from platform's RenameResourceWizard to take advantage
of new UI API too.
Change-Id: I0e596027751dacf6982d4a63def617ae19f69827
Remove dependency to org.eclipse.cdt.core.CCorePlugin during template
schema URL resolution. The TemplateDescriptorSchema.xsd URI should be in
one bundle with TemplateEngine.
Change-Id: Ice2fbc4f33da6616184728d3a41cc803328526a6
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
Remove dependency to org.eclipse.cdt.core.CCorePlugin during IStatus
creation.
Change-Id: Ic9cf5e55866ab6f0727ea91378b7366c6090b7f1
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
removing elements from the result array
the list of candidate functions is filtered for redundant elements. The
returned array must be shrunk to avoid NullpointerExceptions further
down the road.
Change-Id: I5f3c5a19433266dd20492241fd74edc43fbfc0ef
Signed-off-by: Michael Woski <woskimi@yahoo.de>
Only uppercase the env variable names that are special (only Path for now).
This is part of handling the change to keeping cdt variables case
sensitive.
Change-Id: Ibf22823328c8f8d57c98aa9b62763ea884164fae
Signed-off-by: jantje <eclipse@baeyens.it>
The class overrode org.eclipse.core.runtime.Platform to
workaround bugs in the platform that have since been fixed.
As 32-bit x86 and PPC support has been removed this
class is no longer needed as all the code is now
unreachable anyway.
Change-Id: I01bb00b9203aa02663ff25ce36c4c14f22dadee5
Signed-off-by: jantje <eclipse@baeyens.it>
Because of a bug in the platform implementation of equals/hashCode under
some circumstances, we can workaround the problem by returning
the same instance of CElementImageDescriptor when the objects are equal().
Change-Id: I6ff15cffa4b48080dcc6c9a023622edf4ae2d497
This allows symbol reading on larger executables without
hitting an out of memory error
Note: this should not close the bug, it is just a first step.
Change-Id: I62bb252ff67d88d9bef686760fdc0e9b8240fd02
Signed-off-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
Switched from "org.eclipse.cdt.core.options" to
"org.eclipse.core.runtime.preferences"
Change-Id: Ie01d955079a7a54875270bb2d259c9232d30e7ea
Signed-off-by: Alexander Fedorov <alexander.fedorov@arsysop.ru>
CDT has two representations for a pointer type wrapped in a
qualifier type: it can be an IPointerType with some qualifiers
set on it directly, or an IPointerType wrapped in an
IQualifierType. (We prefer the first representation to avoid
creating too many wrappers, but sometimes the second one arises
during template instantiation.) This patch makes sure that two
such types can compare equal even if they use different
representations.
Change-Id: Ia8c7d227c74378aae74f04545b9a69103c14e74b