mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-09-13 22:21:29 +00:00
Merge pull request #2336 from cpasslack/cpasslack/corruptDecimalNumberAfterDecodingFix
Fixed: Encoding a [CPDecimalNumber zero] causes a corrupt CPDecimalNumbe...
This commit is contained in:
@@ -28,6 +28,8 @@
|
||||
// The default global behavior class, created lazily
|
||||
var CPDefaultDcmHandler = nil;
|
||||
|
||||
var CPDecimalNumberUIDs = new CFMutableDictionary();
|
||||
|
||||
/*!
|
||||
@class CPDecimalNumberHandler
|
||||
@ingroup foundation
|
||||
@@ -531,6 +533,20 @@ var CPDecimalNumberHandlerRoundingModeKey = @"CPDecimalNumberHandlerRoundi
|
||||
}
|
||||
|
||||
// instance methods
|
||||
|
||||
- (CPString)UID
|
||||
{
|
||||
var UID = CPDecimalNumberUIDs.valueForKey(self);
|
||||
|
||||
if (!UID)
|
||||
{
|
||||
UID = objj_generateObjectUID();
|
||||
CPDecimalNumberUIDs.setValueForKey(self, UID);
|
||||
}
|
||||
|
||||
return UID + "";
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns a new CPDecimalNumber object with the result of the summation of
|
||||
the receiver object and \c decimalNumber. If overflow occurs then the
|
||||
|
||||
@@ -29,6 +29,7 @@
|
||||
|
||||
[numberFormatter setNumberStyle:CPNumberFormatterDecimalStyle];
|
||||
[numberFormatter setMaximumFractionDigits:3];
|
||||
[numberFormatter setGeneratesDecimalNumbers:NO];
|
||||
|
||||
[control setFormatter:numberFormatter];
|
||||
[control setStringValue:@"12.3456"];
|
||||
|
||||
@@ -62,6 +62,7 @@
|
||||
|
||||
[numberFormatter setMinimum:10];
|
||||
[numberFormatter setMaximum:20];
|
||||
[numberFormatter setGeneratesDecimalNumbers:NO];
|
||||
|
||||
[self assertTrue:[numberFormatter getObjectValue:objectValueRef forString:@"10" errorDescription:nil]
|
||||
message:@"MinMax T1: Expected True."];
|
||||
|
||||
Reference in New Issue
Block a user