## Carbide.c++ bugs fixed

This is a comprehensive list of bugs fixed by release:

- Bugs Fixed in 2.1.0
- 2.0.4, 2.0.3, 2.0.2, 2.0.0
- 1.3.1, 1.3.0 , 1.2.2, 1.2.1

### Bugs Fixed in v2.1.0

- ???

### Bugs Fixed in v2.0.4

- 8050 - Fixed an issue that preventing the building of a target when another target of the same project is being debugged.
- 8282 - Fixed several issues with PRJ_EXTENSION that prevented resource building under SBSv1.
- 8694 - Fixed an issue that prevented building a project using SBSv2 when the workspace and kit resided on different drives.
- 8804 - Fixed a problem where the number of build errors reported wasn't consistent between the Console and Problem views.
- 8816 - Bash errors from SBSv2 should now appear in the Problems view.
- 8890 - The Mark All Read button in the Carbide News view now works as expected.
- 8914 - Corrected an issue with scanning SDKs that cause the scan to repeat endlessly.
- 8919 - Fixed a CORBA error with the Carbide symbol reading API that prevented its use.
- 8923 - Added explicit notes on checking the proxy setting in the Network Connections preference panel when experiencing issues with Hover Help.

### Bugs Fixed in v2.0.3

- 8196 - Fixed an issue that caused executable files to be left open after using the Symbol Reader API.

### Bugs Fixed in v2.0.2

- 7473 - Added PKG files to the Qt template projects so SIS files can be built and installed on a device.
- 7542 - Updated Remote Connections UI to provide better descriptions when choosing between USB or TRK 2.x USB (supports USB only).
- 7915 - Improved the timing out mechanism in Carbide so that TRK doesn't time out when target's are slow to respond.
- 8276 - The main issue that caused Stepping line by line to be slow has been fixed. However, there are some cases where the slowness still appears. For example, when accessing files across a network, and the network is down or if a source file is missing. Re-establishing the connection resolves the slow debugging issue.

### Bugs Fixed in v2.0.0

- 476 - Added the Move to Line command to set the PC location without resuming execution.
- 3800 - Added "New" actions to the Symbian Project Navigator view so you can create new files, etc. from the context menu.
- 3850 - Added the ability to create a new mmp file from the bld.inf editor.
- 3904 - Selecting an MMP file in the Symbian Project Navigator view will now launch the correct executable.
- 3994 - Build configurations are now linked correctly to a launch configuration to allow multiple launches using different builds.
- 4694 - Holding a cursor over a variable name now highlights all instances of that variable name in the editor to allow easier identification of its use.
- 4718 - Corrected an issue where the compiler was preventing the display of a local variable.
- 4936 - Corrected an issue where [Templates] Class template instantiation to files outside the workspace could cause problems.
- 4937 - Indexer should no longer fail when _LIT() macros are used as function parameters.
- 5223 - CodeScanner now provides a link from an individual error or warning to the rule which generated the error or warning.
- 5237 - TODO items on the same line as a preprocessor statement now appear in the Tasks view.
- 5373 - Fixed several issues where code formatting was behaving badly.
- 5376 - The wait time to test if RVCT is available has been extended making it more likely that you can launch Dependency Explorer.
- 5448 - Enhanced the loading of executables so that breakpoints in the server side of a client/server application are always found.
- 5461 - Content assist now correctly uses namespace declarations.
- 5666 - Pressing F3 on a class name inside a NONSHARABLE macro now works as expected.
- 5794 - Indexer is now more robust when it finds "using namespace..." inside a header file.
- 5933 - Fixed an issue where disconnecting from TRK would sometimes generate a panic condition.
- 6099 - DLL symbols are now loaded correctly when attaching to a process using Application TRK for UIQ (v2.8.5).
- 6288 - The Project Updater should no longer crash with a NullPointerException error.
- 6415 - Carbide now correctly handles the ERROR e87 message caused when a command line is too long to be handled by the tool
- 6463 - Fixed a null pointer exception error when launching the debugger.
- 6616 - Successful project builds should no longer show "build error" messages based on CodeScanner errors.
- 6724 - Changed the way renamed executables are tracked for on-device debugging to ensure the correct binary is targeted and its breakpoints hit.
- 6788 - The descriptor length in the Variable view has been increased to 1024 Unicode characters.
- 6874 - Carbide now supports the importing and creation of Qt projects for Symbian OS integration
- 6900 - Added support to the debugger for new descriptor classes LString8 and LString16.
- 6915 - The Keys preference panel should no longer throw errors related to finding schemes
- 6968 - Added .aps extension to the list of default executable files recognized by the Executables view.
- 7108 - Fixed a NullPointerException error that occurred when trying to open a declaration.
- 7124 - Changed how Carbide.c++ locates SDKs to improve reliability.
- 7375 - Opening a .RSS file in an editor view should no longer display syntax errors
- 7493 - Fixed an issue where adding a new class derived from a system base class did not work as intended.
- 7537 - Set the Save Actions "remove trailing whitespace" to disabled by default as it was causing problems when diffing files.
- 7448 - Fixed a configuration issue that prevented the Bug Reporter plug-in from submitting bugs.
- 7543 - The launch configuration's File Transfer tab now marks missing host files with a warning icon and a message when it can't find the file to transfer.
- 7546 - Fixed an issue that caused the Partial SIS upgrade to corrupt installations and prevent removal of the programs.
- 7577 - Problems view sorting that depended upon Creation Time should now work properly.
- 7588 - Builds using the "Build Symbian Component" now correctly display a progress dialog.
- 7596 - The Location field in the Problems view should now sort correctly.
- 7599 - Fixed a problem where all potentially built elements are still added to a launch configuration, but only those actually being built at the time of launch config creation are enabled.
- 7641 - Fixed a bug where pressing "Delete" on Problems view when the bld.inf or mmp text editor was open caused the delete action to be directed to the editor rather than the view.
- 7748 - Dependency files are no longer generated in working directory when doing "abld listing"
- 7782 - Converted shortcuts to use the new command style which should make key bindings more reliable.

RC1

- 7375 - Opening a .RSS file in an editor view should no longer display syntax errors.
- 7376 - A class cast exception now logs an error containing the element it's expecting to be a class but isn't instead of a internal error.
- 7486 - Use of duplicate key bindings for Import and Export has been corrected by using Eclipse 3.4.1.
- 7493 - Fixed an issue where adding a new class derived from a system base class did not work as intended.
- 7532 - Mapped the Synergy file _ccmwaid.inf to open in the text editor instead of the MMP/INF editor which generated incorrect error warnings and prevented builds.
- 7542 - Updated Remote Connections UI to provide better descriptions when choosing between USB (supporting both TRK and Tracing) or TRK 2.x USB (supports USB only).
- 7611 - Fixed a UI refresh issue on Tube devices that prevented Connect/Disconnect from working.
- 7621 - Updated examples and code generator to properly remove icon references
- 7637 - Clarified the message when you choose to update old projects and then don't select a project to update.
- 7776 - The 'NULL' keyword and other macro references are now highlighted as they were in Carbide 1.3.x.
- 7814 - Updated the Basic DLL template to work with EKA2 projects.
- 7866 - An issue that prevented installing TRK on N96 CE Devices has been resolved.
- 7921 - Updated the OpenC Hello World template to work with EKA2 projects.
- 7926 - The cursor should no longer jump between insertion points when a source or header path is selected in the New Symbian OS Class wizard.
- 7927 - Browsing code in the Call Hierarchy window using F3 should no longer throw a NullPointerException error.
- 7943 - Adding executables with non-standard suffixes should now work as expected.
- 7953 - Fixed an issue where selecting several components from project explorer and using Build All Configurations caused errors.
- 7978 - Fixed a problem where some build problems were not detected when launching.
- 8010 - Renamed some template names to clarify their type and intended use.

### Bugs Fixed in v1.3.1

- 3261 - You can now run the following individual abld commands from a new ABLD submenu under the Project and context menus: export, cleanexport, resource, target, final and tidy.
- 4102 - Fixed a problem where Ctrl-~ sometimes opened the wrong header file
- 4106 - You can now import a bld.inf that does not reference any MMP or MAK files
- 4166 - Fixed a problem that sometimes left the main EXE locked after loading when debugging multiple targets
- 5223 - CodeScanner now provides a link from an individual error or warning to the rule which generated the error or warning
- 5254 - The C/C++ > Editor option "Ensure newline at end of file when saving" is now enabled by default
- 5522 - The New Launch Configuration Wizard has been updated to choose an EXE as the main executable instead of a DLL when at least one is present in the project
- 5648 - Corrected an issue where breakpoints were not getting hit when a DLL was build during a debug launch
- 5815 - The debugger now shows a full call stack when it stops at a memory watch point
- 5933 - Fixed an issue where disconnecting from TRK would sometimes generate a panic condition.
- 6007 - Made several enhancements to the build system including: adding an ABLD menu option, not refreshing the project when a build is completed when auto-refresh is enabled, and moved the ROM builder panel into the Project Settings page to address a progress bar issue.
- 6040 - The MMP Selection page in the "Import > Symbian OS Bld.inf file" wizard has been redesigned to include sortable columns for build order, file names, and location, to make locating MMP files easier
- 6222 - Fixed an issue that could cause Carbide to crash and corrupt the workspace.
- 6229 - Fixed a couple of issues where the Executables view and Executables tab behaviors and UI were not syncing correctly causing errors when trying to debug DLLs.
- 6262 - Fixed an issue where the emulator failed on startup with a Null exception error
- 6288 - The Project Updater should no longer crash with a NullPointerException error
- 6299 - Suspending the debugger and trying to resume it should no longer cause the application being debugged to hang
- 6371 - Carbide no longer throws a Null pointer exception when attempts are made to add paths to a project outside of the MMP/INF files
- 6377 - Reworded help on setting conditional breakpoints to clarify their temporary nature.
- 6378 - Revised steps on setting conditional breakpoints to clarify process.
- 6381 - Revised help on opening the Breakpoints view
- 6383 - Revised help to clarify the enabling and disabling of breakpoints
- 6384 - Revised help on removing breakpoints information
- 6385 - Revised steps on setting up watchpoints from different views
- 6415 - Carbide now correctly handles the ERROR e87 message caused when a command line is too long to be handled by the tool
- 6417 - Carbide now correctly shows in the Problems view error messages with multiple defined symbols
- 6450 - STL classes are now recognized by the variable formatter
- 6459 - The Emulator field in a new emulator launch configuration should now be filled in correctly when pressing F11 or clicking Run > Debug
- 6462 - Corrected an issue where workspace layouts were lost when a null pointer exception was thrown.
- 6497 - Run to Line and Continue from line should now behave correctly when used in source files whose locations have been remapped
- 6511 - Additional variable formats like STD have been added to improve how they are displayed in the Variables view
- 6525 - Using the "Resume at line" command should no longer require a Carbide restart
- 6574 - Moved the separate ROM builder into the Carbide builder (Properties > Carbide Build Configurations) and revised the project updater to remove the ROM builder and convert any existing preferences (command line and working directory) to non-WINSCW build configurations
- 6590 - Added Language ID 186 to the MMP handling routines that was causing a NullPointerException error
- 6615 - Added a new extension point (com.nokia.carbide.cdt.builder.environmentModifier) to our builder plugin that allows you to register an environment modifier for modifying project paths
- 6635 - Multiple fixes to improve the setting of breakpoints from a call stack

### Bugs Fixed in v1.3.0

IDE

- 188 - Selecting a .h file name in a editor and pressing F3 (Open Declaration) opens a new editor view and displays the .h file
- 853 - Added text color support in the Build Console to make reading logs easier on the eye
- 2887 - The behavior of project level commands was improved to better follow Eclipse guidelines as well as be more context sensitive.
- 3248 - The Symbian Project Navigator view can now toggle between showing the normal Bld.Inf structure or showing folders using the SOURCEPATHs in the MMP file
- 3266 - Macros now appear in the index and can be found using normal search methods
- 3271 - System Search now supports the searching of any directory visible to the OS
- 3350 - The SIS Builder page in the Carbide Build Configurations property window now supports the generation or one or more output files using different key pairs based upon the same sources.
- 3407 - File search should now find items even if the indexer is still running
- 3425 - The console view now shows a message to let you know it has finished compiling your sources
- 3432 - Carbide now does a better job of detecting changes to MMPs with includes and should now rebuild correctly
- 3448 - Use of non-standard font sizes in labels and views are supported better
- 3457 - Updated indexer to support virtual functions better so that jumps to function declarations from a function pointer should now work as expected
- 3471 - System Search supports text searching of the "\epoc\include" directory
- 3544 - You can now set the default build action behavior of the workspace or a project when modified MMPs are detected
- 3566 - It is now possible to not sign, self sign, or sign with certificate/key pair SISX files in the project's SIS Properties dialog.
- 3679 - The Build icon displayed in the toolbar now has a tooltip
- 3696 - The bld.inf editor now correctly handles #if/#endif situations when exports are added to the bld.inf file
- 3720 - Formatting of pasted code now works correctly
- 3731 - It is now possible to save files not part of a source path have been addressed
- 3743 - MS Visual Studio shortcuts added: Ctrl+F2 (Add Bookmark), Ctrl+G (Go to Line)
- 3741 - Content Assist now includes enums in classes
- 3792 - SDK versions for UIQ SDKs are correctly identified more which allows them to be used
- 3879 - Carbide now monitors the variant header file and forces a rebuild on the effected source files
- 3914 - Eclipse TODO tasks feature now supported
- 3925 - The "debug MMP" option is no longer offered when creating a project. Instead, you are asked to directly select the MMP to use as the default for launching the project
- 3940 - C/C++ Indexer should no longer hang when it encounters a C++ style comment on the same line as a single line macro definition
- 4031 - The Carbide compiler now recognizes the WINSCW deprecation flag in S60 applications
- 4085 - Building a project with only test MMPs no longer does an "abld build"
- 4112 - You can now use the Template Wizard: Copy File process to copy files stored in JAR files
- 4131 - Pressing the external editor for the text property will now correctly activate the scalable string editor
- 4132 - You can now select "Use default incremental builder" to launch a program without calling make when nothing in the workspace has changed
- 4143 - Support for the DEBUGGABLE option is now available in the MMP Editor and included in the project templates. This allows an application to be debugged using the Carbide on-device debugger when targeting Symbian OS v9.4 or later versions.
- 4145 - Canceling a build should now work more reliably
- 4147 - Copying text from a source editor and pasting it into an external editor like MS Word, will no longer copy and paste the background color as well
- 4188 - Freeze exports now takes the list of mmp's being built into consideration
- 4388 - Code Assist now ignores "private:" when invoked within a class
- 4402 - Copious repeats of missing MAP/DLL error messages have been eliminated
- 4410 - Freezing exports no longer passes the "-r" flag to abld with EKA1 kits
- 4442 - Added missing plugins so that Carbide editors now support use of Shift-JIS
- 4470 - A StringIndexOutOfBoundsException error is no longer thrown when a binary has no file extension during an indexing operation
- 4512 - Using "Open File" on a BAT or CMD file now correctly opens the file in an editor instead of executing it
- 4541 - Linker errors are now properly shown in the console view when using GCC-E.
- 4553 - Re-opening a workspace should no longer issue an error stating "No configuration can be found" when a project in the workspace contains no launch configurations
- 4579 - Added the Symbian resource file compiler 'mwwinrc.exe to the Carbide installation
- 4590 - Changing MMP includes now refreshes the EXE
- 4592 - Auto-complete now correctly returns all info for templated classes
- 4612 - SPN now displays the correct relative path when multiple projects exist
- 4657 - Fixed performance problem when trying to determine RVCT install location when disconnected from the network
- 4660 - Added CodeWarrior key mappings for "Go to line" (CTRL+G) and "Undo" (CTRL+Backspace) commands
- 4661 - Editing the SymbianMacroStore.xml file within the sdk.core plugin allows you to add new new SDK release versions without waiting for a patch. A more elegant solution will be investigated for a subsequent release.
- 4672 - The Search view should now present a more consistent display and not flip between different pages each time its opened
- 4702 - Changes to included MMP files are now reflected in the SPN view immediately
- 4795 - When deleting projects from the workspace, the accompanying .pdom files are also deleted
- 4838 - MAKEDEF freeze warnings are now displayed by the Problems view
- 4949 - Debugger now displays the correct variable values in compiled RVCT programs
- 5027 - Fixed an issue where setting a breakpoint in "Thumb" mode would crash the code instead of stopping at the breakpoint
- 5032 - Dragging a file from the SPN view to a P4 Pending Changelist view correctly adds the file/project to the changelist
- 5067 - Use of the CTRL+B key binding has been made more consistent when changes are made to code
- 5169 - You are now prompted which MMP file to use when compiling a file that is used in multiple MMP files.
- 5170 - The SPN view now displays files referenced from Bld.inf using #include in an "Includes" folder group under Bld.inf.
- 5178 - Accessing invalid memory locations when using SysTRK should no longer crash the device
- 5179 - Key bindings for Build/Clean Symbian component now work for MMP files
- 5187 - Code generation of navigation tab-switching in S60 Multi-view applications has been improved
- 5194 - Fixed bug where build would never finish if there were linker errors and the machine had Cygwin installed
- 5199 - The default path to find the Codescanner executable is now set correctly
- 5218 - Pointers are now auto dereferenced one level as they are in CW and VS for the Expressions and Variables views. For example "this" now points directly to the underlying class.
- 5229 - A new S60 version of the Symbian OS style has been added that enables "Insert spaces for tabs" by default
- 5242 - The shortcut for opening the System Search page in the Search window has been set to Alt+Shift+G
- 5244 - Parsing was made more robust to deal with some language variants not previously covered * 5246 - Using a key binding should no longer cause an internal error when attempting to compile a file
- 5246 - Using a key binding should no longer cause an internal error when attempting to compile a file
- 5278 - Fixed some build dependency issues that prevented makefiles from being updated properly
- 5299 - Several missing command groups like "Open Type" which were in C/C++ Perspective have been added to the Carbide C/C++ perspective by default. You can still customize the command groups that appear using the Customize Perspective dialog.
- 5345 - Added support for MMP keywords STDDLL and STDEXE when using Open Environment
- 5366 - Dependencies are now updated properly when files are deleted/renamed in the workspace
- 5368 - Fixed an issue where CONFIG_DLL_PREFIX is blank and parsing a DLL target stopped
- 5372 - Drag and drop now supports these file types: ini, symbol, iby, oby, log, src
- 5376 - The wait time to test if RVCT is available has been extended making it more likely that you can launch Dependency Explorer
- 5379 - Dragging distribution.policy files from the desktop onto the editor window now opens it in Carbide
- 5381 - Added an additional check for problem markers at the end of the build process to ensure that any build failure outputs a build failed message to the Console and does not generate a SIS file
- 5382 - Fixed an issue where an IOException was thrown in calls to the Type Hierarchy
- 5389 - Debugger "Internal error occurred during: child count update" error is now handled correctly
- 5423 - The lookup of #include files now doesn't re-read the same bld.inf every time which caused a slowdown of file importing
- 5430 - Removed the erroneous warning message when the path to a certificate/key files contains spaces
- 5449 - Variables view now correctly dereferences "this" by one level to show its content
- 5463 - The Standard Out text color is now used in the Debug console view
- 5464 - The CDT Build Console background color can now be changed.
- 5474 - RVCT and GCCE now correctly generates dependency files for assembler sources (.s)
- 5481 - Fixed an issue where Error Messages and Warning were shown with a "Connecting Names" prefix that prevented links to the source file from working
- 5486 - Added an API to enable and disable the x86 build option. See the Carbide Plug-in Developer Guide for details.
- 5487 - You can now add a Memory Monitor view to any variable shown in the Variables view
- 5504 - Added support in the build chain to detect changes to USERINCLUDE in the MMP file not supported by the Symbian command line build
- 5505 - Changed default behavior to not show "Path Entry Problem" as the messages did not contribute useful info related to MMP files or the build
- 5509 - Updated indexer to show all classed when creating a new class
- 5527 - Carbide now generates a more obvious warning when the project root is reverted to the bld.inf directory or the user edits the path so that some source directories excluded
- 5536 - Updated Carbide so that the new Project Explorer view takes precedence over the C/C++ Projects view
- 5565 - Fixed issues with the Symbian OS DLL wizard not setting the correct UID2 value and uploading to \system\libs instead of \sys\bin
- 5566 - Resolved issues where the S60 application wizard was using an unnecessary static_cast and creating an unneeded file server session
- 5605 - Expanded explanation of "Do not step into runtime support code" to better explain what the user should experience when they enable of disable this option
- 5618 - Added a check in the error parser that prevented some symbol error messages from being recognized and shown in the Console
- 5624 - Fixed dependency problem with older 9.1 SDK's (S60_3rd_MR) for GCCE builds. A reallyclean must be done to pick up the fix.
- 5625 - Fixed a deadlock issue that prevented the termination of a debug session when using the context menu
- 5632 - Macro scanner updated to account for #undef's in RnD platforms *.hrh files
- 5644 - Added GNU C++ cSource and cHeader mappings to use the C++ language indexer. This works for new projects, but users with existing workspaces should go to Window > Preferences > C/C++ > Language Mappings and add these two entries: C Source File ==> GNU C++, and C Header File ==> GNU C++.
- 5654 - Fixed bug where source directories from newly added mmp files to a project were not being treated as real source directories.
- 5663 - .PKG file with Asian characters are now re-encoded correctly
- 5669 - The Edit Include Paths dialog for the MMP File Editor is now usable as it now supports the use of normal, large, and extra large font settings
- 5734 - Fixed a font resizing issue in the Project properties > Carbide Build Configurations > Arguments pane that prevented the dialog from sizing properly to show all the options
- 5735 - Fixed a bug in the call to makesis when a content search location was specified.
- 5736 - Revised layout in Add/Remove Carbide Build Configurations dialog to resize correctly on Vista, regardless of font size.
- 5743 - Additional key bindings added to support more commands in Carbide
- 5747 - Revised tooltip in MMP Editor > Options tab to read "bytes" instead of "kilobytes"
- 5820 - Source folders in the Project Explorer view are now sorted alphabetically
- 5827 - Fixed an issue where a debug session would fail to launch on the WINSCW emulator
- 5870 - Client applications should now close properly when a PANIC occurs when using ODD.
- 5943 - Fixed a crasher in the Capability Scanner occurring in some CustKits.
- 6032 - Fixed an issue where Ecom plugin resources were not being included in the File Transfer tab in debugger launch configurations
- 6173 - The Search/Replace command now finishes properly even if it reports stale matches without locking up the application

Debugger

- 2137 - Rendering of an unsigned short is now correct in Variables view
- 2285 - You can now toggle breakpoints in both the C++ and Debug perspectives
- 3788 - Carbide 1.3 uses new targeting rules to target executables. By default all executables for the SDK are targeted for debugging even if they are from other projects in the workspace
- 4015 - The new global option "Find source files outside the SDK" in the Carbide.c++ Debugger preference panel controls how the debugger automatically searches for source files both inside and outside of the SDK epocroot
- 4029 - TRK now supports the reporting of RDEBUG messages to the Log view > Unframed Messages when the "View unframed messages from communications port" option is enabled. Note that due to timing issues a flood of RDebug::Printfs from the application to TRK can result in some messages being missed.
- 4418 - It is now possible to set memory watchpoints
- 4545 - Corrected a use case where DE failed to unlock a file which prevented a project rebuild
- 4623 - Console logs are now cleared before a new debug session begins to prevent the log file from growing too large
- 4628 - When launching a debug session using the emulator usually the emulator (epoc.exe) is launched and you must then navigate to your application and open it. However launching a debug session for an .exe file will, in most cases, launch the .exe directly. This will start the emulator and then open your application automatically. However some SDKs do not support this behavior and in those cases you will have to continue to open your application in the emulator manually.
- 5025 - Fixed a debugger termination issue that deadlocked some processes and threw an "Exception processing debug async queue" error
- 5053 - Breakpoints are now properly hit in nested static DLLS when debugging on-device
- 5190 - Fixed an issue in the Executables view that caused an error when displaying the context menu
- 5225 - Toggling a breakpoint inside a method and not on the method name itself, should work as intended and not show an error
- 5380 - Mapping binaries to different source directories using the Executables view has been enhanced to also include the SDK directory
- 5394 - Imported binaries are now resolved better the location of source files
- 5395 - Added clarification information to the Symbian OS Application panel to help users better choose the correct launch configuration
- 5621 - Fixed an issue where the ODD installation of SISX file gives an error message but the application is still installed
- 5623 - KERN-EXEC-3 panics should no longer cause rebooting of ARM11 devices during on device debugging
- 5645 - Key mapping for Debug corrected to operate the same in different views
- 5730 - Extended the timeout for ODD installations to 5 minutes to compensate for large (4+MB) SIS file installations
- 5790 - Fixed a debug state synchronization problem between TRK and the host debugger that prevented the target application from launching
- 5831 - Validation of the emulator path is now done before attempting to launch a debug session. An invalid path will fail gracefully without starting the debug session.
- 6036 - Debug Trace Messages console no longer stops working after first debug session

### Bugs Fixed in v1.2.2

IDE

- 2421 - Changing the SDK ID no longer creates a second entry in the devices.xml file
- 2562 - The UIQ version of TRK now correctly updates information in the UI
- 3855 - Breakpoints are no longer reached once they are removed.
- 4032 - Errors are now correctly removed from the Errors view when the source line containing the error is deleted
- 4056 - A new option for Freeze Symbian Component has been added that freezes only the selected MMP file and not the entire project
- 4075 - The internal error "Computing hasChildren" should no longer occur due to a float reference type being incorrectly treated as a pointer type
- 4106 - You can now import a bld.inf that does not reference any MMP or MAK files
- 4115 - Fixed problem where certain resource errors like "label not found" were treated as warnings in the problems view
- 4118 - The CDT macros __EXE__ and __DLL__ are now correctly added to the command line when there is only one MMP file in the bld.inf for a given build config, or if there are multiple MMP files but they all have the same target type macro. Otherwise, nothing is added
- 4119 - Fixed an issue where Carbide would close when an array out of bounds error occurred
- 4140 - Corrected a deadlock issue that could cause Carbide to hang on startup
- 4147 - Copying text from a source editor and pasting it into an external editor like Word, will no longer copy and paste the background color as well
- 4165 - Using "Open File" on a BAT file now correctly opens the file in an editor instead of executing it
- 4168 - The default project root directory is now correctly calculated for prj_exports and prj_testexport source paths, just like the bld.inf, mmp, make, source and include paths
- 4196 - Fixed an issue that caused a NullPointerException when creating emulator launch configuration that did not contain a TARGET in the MMP file
- 4197 - Fixed an issue that could cause the PI Function tab to hang when zooming to the entire selection
- 4198 - Source files in imported executables can now be mapped to new locations
- 4200 - Carbide now respects the clean andreallyclean settings when "Clean Project" is chosen

Debugger

- 3855 - Breakpoints are no longer reached once they are removed
- 4075 - The internal error "Computing hasChildren" should no longer occur due to a float reference type being incorrectly treated as a pointer type
- 4198 - Source files in imported executables can now be mapped to new locations

### Bugs Fixed in v1.2.1

IDE

- 326 - The Goto macro declaration now works
- 1450 - Notification of missing Perl scripts/tools directory has been improved
- 1470 - ARMV5 programs shold now display all local variables
- 2793 - Forum Nokia site (www.forum.nokia.com/eclipse_downloads) updated to include v1.2 license information
- 3314 - Syntax highlighting and 'Find declaration/definition' now works for sources not included in MMPs
- 3442 - Build All Configurations now also builds the test code too. You can disable this in the Carbide.c++ preferences.
- 3446 - Error message improved when SDK Prefix File is not found in SDK properties
- 3530 - The BWIN folder now appears automatically after freezing a project
- 3555 - The build key bindings should now work
- 3588 - INF Editor now supports UNIX-style paths in the Export page
- 3637 - The targetpath in an .mmp file should now appear in the MMP Editor > TargetPath text box
- 3658 - The "System resource list" and "Resource list" no longer share the same icon in the MMP Editor
- 3660 - The Symbian Project Navigator view now includes an AIF folder for images
- 3675 - The Add SDK dialog now validates for spaces in the EPOC root path
- 3700 - Changing the order of a macro paths in the MMP Editor no longer prints it multiple times
- 3702 - SDKs are now identified in the SDK Preference panel by the name used in the prefix file and not the SDK common name
- 3703 - The INF Importer now issues a warning instead of an error when a project references the drives root directory or another drive
- 3705 - The INF Importer now issues an error when it encounters space characters in the path to the bld.inf file
- 3707 - An alert now appears in the INF Importer when no MMP file is selected
- 3714 - The correct path for BMP files is now displayed in the Symbian Project Navigator view and the MIF Editor
- 3716 - Improved Freeze Exports command to always add -r when freezing and to only appear as an option on the project context menu
- 3717 - The Symbian Project Navigator view now correctly caches and displays .mk files that may have prevented compilation
- 3723 - The INF Importer wizard no longer shows duplicate MMP selections
- 3724 - Test MMPs now correctly appear in the Symbian Project Navigator view (see 3442, 4019)
- 3725 - The IDE now correctly identifies bld.inf/mmp files as dirty when changes are made to the same line after a save
- 3726 - Test MMP components now correctly appear in the Symbian Project Navigator view (see 3724, 4019)
- 3747 - Set the default behavior of Folding Header comments to disabled
- 3749 - RSC file extensions are now correctly picked up by the File Transfer page in a SysTRK launch configuration
- 3754 - INF Editor now remembers the settings for Tidy, Manual, and Support columns
- 3756 - DEF files are now correctly found and shown in the Symbian Project Navigator view after Freeze Export
- 3763 - Creating a new project no longer generates a UID 2 error when the MMP file appears
- 3765 - Deleting UID 2 no longer causes UID 3 to use the UID 2 value in the MMP Editor
- 3768 - Carbide now issues a "Bld.inf file cannot be at the root of the workspace" error when it finds the bld.inf at the root
- 3774 - Added key shortcuts for "Build/Clean Symbian Component" commands
- 3779 - Carbide now issues an alert of Perl is not found at startup and error messages to the Console if Perl v5.6.1 is not available (required by some Symbian build components)
- 3802 - bld.inf files are now updated correctly when PRJ_Exports are moved
- 3810 - Moving files no longer invokes a permission dialog when the Always Change option is activated
- 3867 - Vendor specific macros for S60 3rd Ed. are now recognized
- 3868 - Macros defined in variant.cfg are not added as prefix include macros
- 3887- The INF Importer wizard no longer shows duplicate MMP selections (see 3723)
- 3900 - Long error messagesd in the SDK Preferences panel should no longer be truncated
- 3923 - The Compile key shortcut (Ctrl+Alt+C) now works properly
- 3924 - Build WINSCW targets should no longer show system stack traces anymore
- 3927 - Code formatting to align first level braces is now working
- 3928 - Alerts incorrectly stating that spaces are not allowed for paths sent to signsis has been corrected
- 3929 - Changing EPOCROOT in the SDK Property dialog now correctly updates the prefix file
- 3930 - Can now build for two different SDKs on different drives using the same location of the bld.inf file
- 3940 - The C/C++ Indexer should not hang when indexing a CPP file any more
- 3943 - Updated commands to reflect command change from "Build All Targets" to "Build All Configurations" (see 4021)
- 3945 - Added option setting to activate/deactivate Verbose (-v) during a full, targeted , or Symbian build, as well as clean operations
- 3960 - Open in Command Window now correctly opens directories on drives other than C:\
- 3961 - Importing a project no longer generates incorrect "duplicate path entries" warning message
- 3965 - Customers with valid licenses should no longer see license warning messages unless their license file is corrupted
- 3967 - Choosing "Open Command Window" should now open the directory correctly, not one level up
- 3974 - The Symbian Project Navigator view now correctly detects when a missing MMP file is added and no longer shows the "missing" icon
- 4004 - Updated Breakpoint documentation to clarify that the symbols for a module must be loaded before any breakpoints in that module can be resolved (see 3916)
- 4017 - Updated Debug view's Disconnect control documentation on its ability to detach from an attached process/thread with TRK
- 4019 - Added "Build test components..." option to Carbide.c++ preference panel documentation (see 3442)
- 4021 - Updated documentation to change "Build All Targets" to "Build All Configurations" (see 3943)
- 4022 - Added "Verbose output..." option to Carbide.c++ preference panel documentation (see 3945)
- 4035 - Bld.inf/mmp parser no longer misinterprets "../" in macros
- 4047 - Corrected key shortcuts for Previous/Next Word MSVC shortcuts

Debugger

- 415 - The Modules view now correctly shows symbols for loaded executables and DLLs
- 591 - The Expressions view now correctly refreshes with derived type variables
- 2129 - The Variables view now correctly shows unsigned char variable values using Natural Format
- 2204 - While stepping over some global variables that are getting initialized the PC counter skips over the line
- 2207 - The option Run > Restart is now correctly disabled for Stop Mode debugging
- 2236 - Floating point values are no longer treated as decimals
- 2238 - Double values are no longer treated as decimals
- 2530 - The Details pane now always shows the string value instead of the address value of the char pointer
- 2967 - The Symbian OS Data view now correctly retains its size when maximized and another tab is pressed in the view
- 2998 - The Debug view correctly resets its state when terminating a debug session so that the controls are not disabled
- 3245 - You can now Detach from an attached process or thread
- 3262 - In the Memory View, changing memory content to Traditional View rendering now correctly updates the view
- 3751 - The ROM Log file TRK launch configuration is now documented
- 3819 - A TRK debug session that fails will no longer leave a process running in the Debug view
- 3836 - The Memory view now handles "array out of bounds" exceptions better
- 3910 - Terminating the Symbian OS View should no longer generate "Unhandled event loop exception" errors
- 3916 - Updated Breakpoint documentation to clarify that the symbols for a module must be loaded before any breakpoints in that module can be resolved (see 4004)
- 3952 - The debugger now correctly closes all processes when terminating a debug session
- 3966 - Added support for the debug traces for emulator (epocwin.out) and COM port to the Console view
- 3975 - The Variables view no longer displays strange ".sw" variables