Aditya Mandaleeka [Thu, 29 Oct 2015 18:37:10 +0000 (11:37 -0700)]
Merge pull request #1875 from adityamandaleeka/remove_suspension
Initial removal of thread suspension code from PAL
Matt Ellis [Thu, 29 Oct 2015 00:34:56 +0000 (17:34 -0700)]
Merge pull request #1887 from dotnet-bot/from-tfs
Merge changes from TFS
Pallavi Taneja [Wed, 28 Oct 2015 19:51:36 +0000 (12:51 -0700)]
Expose Environment.Exit in mscorlib.dll.
This will later be consumed by the System.Runtime.Extensions contract.
[tfs-changeset: 1542759]
Bryan P. Arant [Wed, 28 Oct 2015 14:46:14 +0000 (07:46 -0700)]
Merge pull request #1882 from bryanar/pr1-test-fix
Fix for run-only pr1 tests.
Bryan Arant [Wed, 28 Oct 2015 08:39:05 +0000 (01:39 -0700)]
Fix for run-only pr1 tests.
Jan Vorlicek [Wed, 28 Oct 2015 00:59:26 +0000 (17:59 -0700)]
Merge pull request #1876 from stephentoub/local_realloc
Implement LocalReAlloc in PAL
Jan Vorlicek [Tue, 27 Oct 2015 23:10:09 +0000 (16:10 -0700)]
Merge pull request #1878 from janvorli/fix-ex-try
Add missing exception holder to EX_TRY
Jan Vorlicek [Tue, 27 Oct 2015 17:30:58 +0000 (10:30 -0700)]
Add missing exception holder to EX_TRY
When the exception handling was changed recently, the exception holder
was added only to PAL_TRY / PAL_EXCEPT macros. But it needs to be
in the EX_TRY as well, otherwise first pass of exception handling
would incorrectly consider some exceptions unhandled.
stephentoub [Tue, 27 Oct 2015 16:48:10 +0000 (12:48 -0400)]
Implement CoTaskMemRealloc in PAL
Also implement CoTaskMemRealloc in PAL, as it's exposed via the public Marshal.CoTaskMemRealloc.
stephentoub [Tue, 27 Oct 2015 03:03:04 +0000 (23:03 -0400)]
Implement LocalReAlloc in PAL
Marshal.ReAllocHGlobal is failing because it's expecting to find a LocalReAlloc implementation in libcoreclr's PAL. This commit adds one.
John Chen [Tue, 27 Oct 2015 15:51:37 +0000 (08:51 -0700)]
Merge pull request #1868 from JohnChen0/crossgen-linux
Fix a CrossGen assert on Linux
Aditya Mandaleeka [Mon, 26 Oct 2015 23:11:01 +0000 (16:11 -0700)]
Remove SuspendThread and SetThreadContext PAL tests.
Aditya Mandaleeka [Mon, 26 Oct 2015 22:42:45 +0000 (15:42 -0700)]
Remove unneeded includes and error in threadsusp.cpp
Aditya Mandaleeka [Mon, 26 Oct 2015 21:47:49 +0000 (14:47 -0700)]
Remove THREADMarkDiagnostic and its uses.
Aditya Mandaleeka [Sat, 24 Oct 2015 01:34:59 +0000 (18:34 -0700)]
Remove THREADHandleSuspendNative and THREADHandleResumeNative
Aditya Mandaleeka [Sat, 24 Oct 2015 01:32:08 +0000 (18:32 -0700)]
Set dwSuspendCount when resuming in pipe case
Aditya Mandaleeka [Sat, 24 Oct 2015 01:30:20 +0000 (18:30 -0700)]
Disable USE_SIGNALS_FOR_THREAD_SUSPENSION
Aditya Mandaleeka [Fri, 23 Oct 2015 23:15:50 +0000 (16:15 -0700)]
Make InjectActivationInternal on OS X use platform thread suspension
Aditya Mandaleeka [Fri, 23 Oct 2015 23:10:36 +0000 (16:10 -0700)]
Remove InternalSuspendThreadFromData and IsSuspensionStateSafe
Aditya Mandaleeka [Fri, 23 Oct 2015 22:49:49 +0000 (15:49 -0700)]
Remove dwUnsafeRegionCount and dwSuspCount
Aditya Mandaleeka [Fri, 23 Oct 2015 21:41:41 +0000 (14:41 -0700)]
Remove SuspendThread and associated code.
Aditya Mandaleeka [Fri, 23 Oct 2015 21:27:42 +0000 (14:27 -0700)]
Remove unused function IsAssertShutdownSafe
Aditya Mandaleeka [Fri, 23 Oct 2015 07:21:10 +0000 (00:21 -0700)]
Remove unused function PROCCondemnOtherThreads
Aditya Mandaleeka [Fri, 23 Oct 2015 07:19:51 +0000 (00:19 -0700)]
Remove PROCSuspendOtherThreads
Aditya Mandaleeka [Fri, 23 Oct 2015 06:49:43 +0000 (23:49 -0700)]
Remove Enter/LeaveUnsafeRegion
Aditya Mandaleeka [Fri, 23 Oct 2015 06:20:47 +0000 (23:20 -0700)]
Disable apithreadstress when STRESS_THREAD is not enabled
Lubomir Litchev [Mon, 26 Oct 2015 17:15:18 +0000 (10:15 -0700)]
Merge pull request #1862 from LLITCHEV/Issue1831
Fixed the bug described in GH issue 1831.
John Chen [Mon, 26 Oct 2015 15:48:06 +0000 (08:48 -0700)]
Fix a CrossGen assert on Linux
Resource string loading during CrossGen doesn't work on Linux.
Disable it for now. In many cases the loaded string isn't even used.
Matt Ellis [Mon, 26 Oct 2015 04:31:58 +0000 (21:31 -0700)]
Merge pull request #1229 from benpye/fix-complus-case-docs
Fix casing of COMPlus_ in documentation
Jan Kotas [Mon, 26 Oct 2015 03:30:38 +0000 (20:30 -0700)]
Merge pull request #1867 from dotnet-bot/from-tfs
Merge changes from TFS
Lubomir Litchev [Mon, 26 Oct 2015 01:19:27 +0000 (18:19 -0700)]
Fix for a build break. The gtNewOperNode is not a member of Lowering, but of Compiler. An extra comp-> dereferencing is needed. Talked to Matt Ellis and committing directly to avoid nightly broken build.
[tfs-changeset: 1541493]
Matt Ellis [Mon, 26 Oct 2015 00:29:52 +0000 (17:29 -0700)]
Merge pull request #1866 from dotnet-bot/from-tfs
Merge changes from TFS
Matt Ellis [Mon, 26 Oct 2015 00:29:03 +0000 (17:29 -0700)]
Merge pull request #1851 from ellismg/icu-remove-c-plus-plus
Remove OSX Homebrew ICU dependency
Matt Ellis [Sun, 25 Oct 2015 21:00:24 +0000 (14:00 -0700)]
Fix build break.
Wrong local name used in lowerarm64.cpp
[tfs-changeset: 1541475]
Matt Ellis [Sat, 24 Oct 2015 08:27:09 +0000 (01:27 -0700)]
Merge pull request #1861 from dotnet-bot/from-tfs
Merge changes from TFS
Lubomir Litchev [Fri, 23 Oct 2015 18:47:19 +0000 (11:47 -0700)]
Fixed the bug described in GH issue 1831.
When generating unboxing function, if the return value is nullables
returned in 2 registers, creating the temp var to pass to the
helper function is not enough. Also need to make sure the operand type
stack is properly maintained.
Rama krishnan Raghupathy [Sat, 24 Oct 2015 01:59:28 +0000 (18:59 -0700)]
Merge pull request #1857 from ramarag/testhygiene
Ensure each test has its own unique directory
Rama Krishnan Raghupathy [Fri, 23 Oct 2015 21:39:25 +0000 (14:39 -0700)]
Test Cleanup:
1. Ensures each test has its own unique directory
2. Use Project Reference to refer native CMakeLists.txt
3. Avoids copying the facades to the test build
Gaurav Khanna [Fri, 23 Oct 2015 22:52:07 +0000 (15:52 -0700)]
Merge pull request #1818 from gkhanna79/Fix1774
Fix Unix CoreConsole to correctly determine the path to the entrypoint executable
Matt Ellis [Fri, 23 Oct 2015 21:24:13 +0000 (14:24 -0700)]
Cleanup CMakeLists.txt
There were a few problems that needed to be addressed:
- Our detection logic around testing if ICU supported a feature was
still checking for C++ stuff instead of the coresponding C
code (which we ended up using).
- There was some cleanup we could do now that the OSX and other Unix
builds were split apart
Matt Ellis [Fri, 23 Oct 2015 21:23:55 +0000 (14:23 -0700)]
Fix spelling issues
Gaurav Khanna [Fri, 23 Oct 2015 21:13:59 +0000 (14:13 -0700)]
Address a messaging nit.
Gaurav Khanna [Mon, 19 Oct 2015 05:18:43 +0000 (22:18 -0700)]
Fix issue 1774
Cagri Aslan [Fri, 23 Oct 2015 16:47:35 +0000 (09:47 -0700)]
Merge pull request #1858 from caslan/addcriticalsectionexports
Add EnterCriticalSection / LeaveCriticalSection exports to libcoreclr
Matt Ellis [Fri, 23 Oct 2015 07:55:23 +0000 (00:55 -0700)]
Use correct close function for UNumberFormat
Cagri [Fri, 23 Oct 2015 06:59:38 +0000 (23:59 -0700)]
Add EnterCriticalSection / LeaveCriticalSection exports to libcoreclr
Lakshmi Priya [Fri, 23 Oct 2015 03:33:47 +0000 (20:33 -0700)]
Merge pull request #1834 from Priya91/fixnull
Add null checks to StackString usages.
Aditya Mandaleeka [Fri, 23 Oct 2015 02:17:17 +0000 (19:17 -0700)]
Merge pull request #1854 from janvorli/fix-comment
Fix obsolete comment
Lakshmi Priya Sekar [Thu, 22 Oct 2015 03:37:06 +0000 (20:37 -0700)]
Add null checks to StackString usages.
Bryan P. Arant [Fri, 23 Oct 2015 01:15:39 +0000 (18:15 -0700)]
Merge pull request #1832 from bryanar/enable_crossgen_tests
- Changes required to enable crossgen on the tests.
- Added priority level parameter to buildtest.cmd
- Added crossgen parameter to buildtest.cmd
- Updated testing documentation to reflect prioritylevel testing, and crossgen testing.
Jan Vorlicek [Fri, 23 Oct 2015 01:15:35 +0000 (18:15 -0700)]
Fix obsolete comment
Matt Ellis [Fri, 23 Oct 2015 00:46:54 +0000 (17:46 -0700)]
Use std::vector instead of calloc
This matches what we do in other places in calendarData.cpp, the RAII
pattern will make it easier to not leak memory.
Matt Ellis [Fri, 23 Oct 2015 00:42:48 +0000 (17:42 -0700)]
Merge pull request #1850 from dotnet-bot/from-tfs
Merge changes from TFS
Jan Vorlicek [Thu, 22 Oct 2015 23:52:57 +0000 (16:52 -0700)]
Merge pull request #1849 from janvorli/fix-fp-registers-offset
Fix floatingpoint register offsets in TransitionBlock for Unix
Rama Krishnan Raghupathy [Thu, 22 Oct 2015 23:19:25 +0000 (16:19 -0700)]
[adityam] Fix break in DllImport code for Desktop CLR.
[tfs-changeset: 1540922]
Matt Ellis [Wed, 21 Oct 2015 20:48:37 +0000 (13:48 -0700)]
Link against libicucore on OSX
OSX ships with a copy of ICU (their globalization APIs are built on top
of it). Since we only use stable c based APIs, we can link against it
using the methods described in using a System ICU in the ICU User's
Guide (basically we disable function renaming, don't use C++ and only
use stable APIs).
The ICU headers are not part of the SDK, so we continue to need ICU
installed via Homebrew as a build time dependency.
Fixes dotnet/corefx#3849
Eugene Rozenfeld [Thu, 22 Oct 2015 22:37:41 +0000 (15:37 -0700)]
Merge pull request #1830 from erozenfeld/RotateBits
Generate efficient code for rotation patterns.
Matt Ellis [Thu, 22 Oct 2015 22:35:03 +0000 (15:35 -0700)]
Merge pull request #1848 from dotnet-bot/from-tfs
Merge changes from TFS
Bryan Arant [Thu, 22 Oct 2015 03:19:51 +0000 (20:19 -0700)]
Changes required to enable crossgen on the tests.
Rama Krishnan Raghupathy [Thu, 22 Oct 2015 22:07:33 +0000 (15:07 -0700)]
adding more context
[tfs-changeset: 1540889]
Rama Krishnan Raghupathy [Thu, 22 Oct 2015 21:10:15 +0000 (14:10 -0700)]
Addressing Desktop Build break due to addition of a new non windows event in Clretwall.man
[tfs-changeset: 1540865]
Stephen Toub [Thu, 22 Oct 2015 20:47:51 +0000 (16:47 -0400)]
Merge pull request #1816 from stephentoub/string_indexof_perf
Improve string.{Last}IndexOf perf on Unix for Ordinal/OrdinalIgnoreCase
Cagri Aslan [Thu, 22 Oct 2015 20:20:23 +0000 (13:20 -0700)]
Merge pull request #1840 from caslan/customnotificationfix
Fixed an issue with getting event size not working for custom notific…
stephentoub [Wed, 21 Oct 2015 02:32:14 +0000 (22:32 -0400)]
Update IndexOfOrdinalIgnoreCase to use full code units
stephentoub [Tue, 20 Oct 2015 19:34:38 +0000 (15:34 -0400)]
Improve string.{Last}IndexOf perf on Unix for Ordinal/OrdinalIgnoreCase
Our current implementation of IndexOfOrdinal for strings on Unix uses Substring to get the piece of the source string we care about; this results in an unnecessary allocation / string copy. When using OrdinalIgnoreCase, we also convert both the source and search strings to upper-case using ToUpperInvariant, resulting in more allocations. And our LastIndexOfOrdinal implementation delegates to IndexOfOrdinal repeatedly, incurring such allocations potentially multiple times.
This change reimplements Ordinal searching in managed code to not use Substring, and it implements OrdinalIgnoreCase searching via new functions exposed in the native globalization shim, so as to use ICU without having to make managed/native transitions for each character.
With the changes, {Last}IndexOf with Ordinal/OrdinalIgnoreCase are now allocateion-free (as you'd expect), and throughput when startIndex/count and/or OrdinalIgnoreCase are used is increased significantly, on my machine anywhere from 20% to 3x, depending on the inputs.
Koundinya Veluri [Thu, 22 Oct 2015 18:03:04 +0000 (11:03 -0700)]
Merge pull request #1833 from kouvel/Inline2
Move some functions to allow them to be inlined with clang
Jan Vorlicek [Thu, 22 Oct 2015 17:55:02 +0000 (10:55 -0700)]
Fix floatingpoint register offsets in TransitionBlock for Unix
The conversion between floating point register index and offset was incorrectly
multiplying the the index by 8 instead of 16. The xmm registers in the
TransitionBlock on Unix take 16 bytes each, not 8.
Matt Mitchell [Thu, 22 Oct 2015 15:45:48 +0000 (08:45 -0700)]
Merge pull request #1839 from mmitche/fix-linux-coreclr-tests
A couple tweaks to coreclr linux tests
Matt Mitchell [Thu, 22 Oct 2015 15:40:34 +0000 (08:40 -0700)]
A couple tweaks to coreclr linux tests
Cagri Aslan [Sat, 17 Oct 2015 00:43:39 +0000 (17:43 -0700)]
Fixed an issue with getting event size not working for custom notification event
Matt Ellis [Thu, 22 Oct 2015 05:43:32 +0000 (22:43 -0700)]
Merge pull request #1820 from richlander/rich-cleanup
Update license attribution
Koundinya Veluri [Tue, 20 Oct 2015 17:37:01 +0000 (10:37 -0700)]
Move some functions to allow them to be inlined with clang
For the moment, GetThread, _rotl/_rotr, Interlocked..., and similar functions were moved to allow inlining them with clang.
The plan is to eventually enable link-time optimization (LTO) to cover inlining across translation units.
Renamed some code files in PAL tests to compile as C++ to use the C++ inline semantics.
Brian Robbins [Thu, 22 Oct 2015 03:03:38 +0000 (20:03 -0700)]
Merge pull request #1827 from brianrob/tracinginit
Initialize LTTng tracepoint providers automatically
Rama krishnan Raghupathy [Thu, 22 Oct 2015 03:00:57 +0000 (20:00 -0700)]
Merge pull request #1751 from ramarag/eventsource
Enable EventSource Logging in Linux via Lttng
Eugene Rozenfeld [Tue, 13 Oct 2015 01:36:25 +0000 (18:36 -0700)]
Generate efficient code for rotation patterns.
This change adds code to recognize rotation idioms and generate efficient instructions for them.
Two new operators are added: GT_ROL and GT_ROR.
The patterns recognized:
(x << c1) | (x >>> c2) => x rol c1
(x >>> c1) | (x << c2) => x ror c2
where c1 and c2 are constant and c1 + c2 == bitsize(x)
(x << y) | (x >>> (N - y)) => x rol y
(x >>> y) | (x << (N - y)) => x ror y
where N == bitsize(x)
(x << y & M1) | (x >>> (N - y) & M2) => x rol y
(x >>> y & M1) | (x << (N - y) & M2) => x ror y
where N == bitsize(x)
M1 & (N - 1) == N - 1
M2 & (N - 1) == N - 1
For a simple benchmark with 4 rotation patterns in a tight loop
time goes from 7.324 to 2.600 (2.8 speedup).
Rotations found and optimized in mscorlib:
System.Security.Cryptography.SHA256Managed::RotateRight
System.Security.Cryptography.SHA384Managed::RotateRight
System.Security.Cryptography.SHA512Managed::RotateRight
System.Security.Cryptography.RIPEMD160Managed:MDTransform (320 instances!)
System.Diagnostics.Tracing.EventSource.Sha1ForNonSecretPurposes::Rol1
System.Diagnostics.Tracing.EventSource.Sha1ForNonSecretPurposes::Rol5
System.Diagnostics.Tracing.EventSource.Sha1ForNonSecretPurposes::Rol30
System.Diagnostics.Tracing.EventSource.Sha1ForNonSecretPurposes::Drain
(9 instances of Sha1ForNonSecretPurposes::Rol* inlined)
Closes #1619.
Matt Ellis [Thu, 22 Oct 2015 01:46:58 +0000 (18:46 -0700)]
Merge pull request #1828 from ellismg/fix-directory-casing
Fix directory casing of `regressions' in test/src
Rama [Mon, 12 Oct 2015 23:09:40 +0000 (16:09 -0700)]
Enable EventSource Logging in Linux via Lttng
Matt Ellis [Thu, 22 Oct 2015 00:42:33 +0000 (17:42 -0700)]
Fix directory casing of `regressions' in test/src
We had both tests/src/Regressions and tests/src/regressions which causes
problems because the on disc casing of files now differs based on if you
have a case insensitive file system or not.
This was confusing the the mirror a great deal because the casing of the
files is unified on the TFS side but the mirror was seeing these files
as renames.
Brian Robbins [Wed, 21 Oct 2015 23:34:42 +0000 (16:34 -0700)]
Initialize LTTng tracepoint provider as part of loading libcoreclr.so.
Matt Mitchell [Wed, 21 Oct 2015 23:26:36 +0000 (16:26 -0700)]
Merge pull request #1809 from mmitche/add-x86-builds
Add x86 builds to CI (most off by default)
Matt Mitchell [Tue, 20 Oct 2015 18:20:45 +0000 (11:20 -0700)]
Add x86 builds to CI (most off by default)
* Builds are available through trigger phrases
* x86 windows_nt on for pushes by default
Additionally:
* fixes workspace parameter quoting for Linux coreclr tests
Nate Amundson [Wed, 21 Oct 2015 22:45:44 +0000 (17:45 -0500)]
Merge pull request #1788 from naamunds/UpdateXplatDoc
Update Linux and OS X build instructions
Nate Amundson [Wed, 21 Oct 2015 22:43:26 +0000 (17:43 -0500)]
Update Linux and OS X build instructions
CoreClr (including mscorlib) and CoreFx can now be built using Mono on
both Linux and OS X; this change updates the instructions to reflect
that. It also moves the instructions for the alternative option of
building the x-plat bits on Windows to cross-building.md.
This change also adds System.Globalization.Native, which is now
necessary.
At some point the FreeBSD documentation should also be updated to be
consistent with the Linux and OS X instructions; ideally, they should be
combined into one file, as discussed in https://github.com/dotnet/coreclr/issues/1590.
Aditya Mandaleeka [Wed, 21 Oct 2015 22:26:49 +0000 (15:26 -0700)]
Merge pull request #1780 from adityamandaleeka/librarySearchPaths
Fix DllImport search logic with respect to prefixes/suffixes
Aditya Mandaleeka [Wed, 21 Oct 2015 20:58:52 +0000 (13:58 -0700)]
Add STANDARD_VM_CONTRACT and remove loop that's no longer needed.
Matt Ellis [Wed, 21 Oct 2015 18:20:48 +0000 (11:20 -0700)]
Hygine cleanups in holders.h
Use "= delete" syntax to make it clear the IcuHolder copy constructor
and assignment opperators are removed.
Remove superfluous "public" modifier on the struct closers used by the
IcuHolders.
Matt Ellis [Wed, 21 Oct 2015 05:18:29 +0000 (22:18 -0700)]
Cleanup include directives
Matt Ellis [Wed, 21 Oct 2015 02:30:42 +0000 (19:30 -0700)]
Remove use of icu::Locale C++ type
Remove all the uses of the icu::Locale type in favor of just using a
char* which is the raw locale id (which is exactly what all the ICU C
apis use for a locale).
The meat of this change si in locale.cpp to actually handle doing the
conversion from UChar* to char*. The rest of the places are dealing
with the fallout (GetLocale now has a different signiture and the
.getName() dance is no longer needed as we have a raw locale name all
the time now).
Matt Ellis [Wed, 21 Oct 2015 01:37:54 +0000 (18:37 -0700)]
Move off Locale instance methods
To prepare for removing icu::Locale in favor of just using the id
directly, remove all the uses of Locale methods except for .getName().
We now use GetLocale to create a Locale but then turn it into a char*
for all the helper methods.
After this change, we can update GetLocale to do locale parsing into a
char buffer and remove all the locale.getName() calls with just `locale'.
Matt Ellis [Tue, 20 Oct 2015 21:50:28 +0000 (14:50 -0700)]
Remove C++ Locale use in EnumSymbols
Matt Ellis [Tue, 20 Oct 2015 21:29:59 +0000 (14:29 -0700)]
Get Eras using ICU C API instead of C++
Getting the regular eras is straight forward, we can do the thing we do
for other locale data and just ask ICU using a specific
UDateFormatSymbolType. For abbreviated eras, there's no C API, but we
can try to just read the data from ICU resources and fall back to the
standard width eras if that doesn't work.
Matt Ellis [Mon, 19 Oct 2015 20:40:58 +0000 (13:40 -0700)]
Remove use of ICU C++ DateFormatSymbols
Matt Ellis [Thu, 15 Oct 2015 23:35:28 +0000 (16:35 -0700)]
Remove useage of ICU C++ DecimalFormatSymbols
Matt Ellis [Thu, 15 Oct 2015 23:00:35 +0000 (16:00 -0700)]
Remove ICU C++ LocaleDisplayNames
Matt Ellis [Thu, 15 Oct 2015 21:59:26 +0000 (14:59 -0700)]
Remove use of ICU C++ NumberFormat class
This change removes NumberFormat in favor of UNumberFormat. There is a
bit of work that needs to happen in order to keep the normalization code
we use to convert an ICU pattern so to something we can match against
working.
Instead of UnicodeStrings, the input to the normalization function is
now a UChar* and we build up a std::string during normalization. This
allows us to also skip a conversion from UChar* back to char* so we can
find the correct pattern in our collection of patterns to examine.
Matt Ellis [Thu, 15 Oct 2015 18:20:59 +0000 (11:20 -0700)]
Remove use of ICU C++ DateFormatSymbols
Matt Ellis [Thu, 15 Oct 2015 00:39:40 +0000 (17:39 -0700)]
Convert DateFormat to UDateFormat
Remove uses of the C++ DateFormat and SimpleDateFormat classes in favor
of UDateFormat.
As part of this change, it was easier to move some of the code that
converts an ICU format string to a .NET Style format string from native
code up to managed code. This code used UnicodeString and we'll need to
move away from that as well as we remove all the C++ usage.
Matt Ellis [Wed, 14 Oct 2015 22:45:03 +0000 (15:45 -0700)]
Convert DateTimePatternGenerator usage to C
Part of the effort to remove our usage of C++ ICU APIs. The major issue
here was that the C++ API used char*'s for some things whereas the C API
used UChar*'s so we needed to define our own copies of some constants.
We also need to manage a buffer ourselves, instead of being able to use
the underlying buffer of a retured UnicodeString.
Matt Ellis [Wed, 14 Oct 2015 19:30:37 +0000 (12:30 -0700)]
Remove use of ICU C++ Calendar class
We would like to be able to link against versions of ICU installed as a
"operating system level library" which means we can't take a dependency
on any C++ APIs.
This change moves away from icu::Calendar in favor of UCalendar. I also
introduce a small helper template to manage the lifetime of ICU
resources.
Lakshmi Priya [Wed, 21 Oct 2015 20:01:37 +0000 (13:01 -0700)]
Merge pull request #1824 from Priya91/fixbug
Fix lpFileName leak in InternalCreateProcess.