mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-31 16:50:58 +00:00
Fixed memory leak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@3011 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
97b63e32f5
commit
2f1b6e455d
1 changed files with 9 additions and 4 deletions
|
@ -25,7 +25,6 @@
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
#include <gnustep/base/behavior.h>
|
#include <gnustep/base/behavior.h>
|
||||||
#include <Foundation/NSDictionary.h>
|
#include <Foundation/NSDictionary.h>
|
||||||
#include <Foundation/NSGDictionary.h>
|
|
||||||
#include <Foundation/NSArray.h>
|
#include <Foundation/NSArray.h>
|
||||||
#include <Foundation/NSUtilities.h>
|
#include <Foundation/NSUtilities.h>
|
||||||
#include <Foundation/NSString.h>
|
#include <Foundation/NSString.h>
|
||||||
|
@ -40,6 +39,9 @@
|
||||||
|
|
||||||
@implementation NSDictionary
|
@implementation NSDictionary
|
||||||
|
|
||||||
|
@class NSGDictionary;
|
||||||
|
@class NSGMutableDictionary;
|
||||||
|
|
||||||
static Class NSDictionary_concrete_class;
|
static Class NSDictionary_concrete_class;
|
||||||
static Class NSMutableDictionary_concrete_class;
|
static Class NSMutableDictionary_concrete_class;
|
||||||
|
|
||||||
|
@ -225,6 +227,7 @@ static Class NSMutableDictionary_concrete_class;
|
||||||
OBJC_MALLOC (keys, id, capacity);
|
OBJC_MALLOC (keys, id, capacity);
|
||||||
if (firstObject != nil)
|
if (firstObject != nil)
|
||||||
{
|
{
|
||||||
|
NSDictionary *d;
|
||||||
objects[num_pairs] = firstObject;
|
objects[num_pairs] = firstObject;
|
||||||
/* Keep grabbing arguments until we get a nil... */
|
/* Keep grabbing arguments until we get a nil... */
|
||||||
while ((arg = va_arg (ap, id)))
|
while ((arg = va_arg (ap, id)))
|
||||||
|
@ -246,9 +249,11 @@ static Class NSMutableDictionary_concrete_class;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
NSAssert (argi % 2 == 0, NSInvalidArgumentException);
|
NSAssert (argi % 2 == 0, NSInvalidArgumentException);
|
||||||
return [[[self alloc] initWithObjects: objects forKeys: keys
|
d = [[[self alloc] initWithObjects: objects forKeys: keys
|
||||||
count: num_pairs]
|
count: num_pairs] autorelease];
|
||||||
autorelease];
|
OBJC_FREE(objects);
|
||||||
|
OBJC_FREE(keys);
|
||||||
|
return d;
|
||||||
}
|
}
|
||||||
/* FIRSTOBJECT was nil; just return an empty NSDictionary object. */
|
/* FIRSTOBJECT was nil; just return an empty NSDictionary object. */
|
||||||
return [self dictionary];
|
return [self dictionary];
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue