ObjFW  Check-in [d9ddc4d06e]

Overview
Comment:Don't cache the description of exceptions.

This was pretty pointless, as it's usually only used once.

Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA3-256: d9ddc4d06e69db0985f92f015c495a52b1bdb7beef050227dcd261221806cb88
User & Date: js on 2013-02-13 23:10:35
Other Links: manifest | tags
Context
2013-02-14
02:07
Add -Wdocumentation if supported by the compiler. check-in: fac2c8063e user: js tags: trunk
2013-02-13
23:10
Don't cache the description of exceptions. check-in: d9ddc4d06e user: js tags: trunk
2013-02-12
19:59
Add -Wno-objc-root-class to Xcode project. check-in: 8fb566e562 user: js tags: trunk
Changes

Modified src/exceptions/OFAcceptFailedException.m from [13c27ee54c] to [a308e0b787].

60
61
62
63
64
65
66
67
68
69

70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
60
61
62
63
64
65
66



67

68
69


70
71
72
73
74
75
76
77
78
79
80
81







-
-
-
+
-


-
-












	[_socket release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to accept connection in socket of type %@! " ERRFMT,
	    _inClass, ERRPARAM];

	return _description;
}

- (OFTCPSocket*)socket
{
	OF_GETTER(_socket, NO)
}

- (int)errNo
{
	return _errNo;
}
@end

Modified src/exceptions/OFAddressTranslationFailedException.m from [1441dd45a6] to [1896452c73].

65
66
67
68
69
70
71
72
73
74
75
76

77
78
79
80
81
82
83

84
85
86
87
88
89
90
91
92
93
94
65
66
67
68
69
70
71



72

73
74
75
76
77
78
79

80
81
82


83
84
85
86
87
88
89







-
-
-

-
+






-
+


-
-







	[_host release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	if (_host != nil)
		_description = [[OFString alloc] initWithFormat:
		return [OFString stringWithFormat:
		    @"The host %@ could not be translated to an address in "
		    @"class %@. This means that either the host was not found, "
		    @"there was a problem with the name server, there was a "
		    @"problem with your network connection or you specified an "
		    @"invalid host. " ERRFMT, _host, _inClass, AT_ERRPARAM];
	else
		_description = [[OFString alloc] initWithFormat:
		return [OFString stringWithFormat:
		    @"An address translation failed in class %@! " ERRFMT,
		    _inClass, AT_ERRPARAM];

	return _description;
}

- (OFTCPSocket*)socket
{
	OF_GETTER(_socket, NO)
}

Modified src/exceptions/OFAlreadyConnectedException.m from [8b35209312] to [baa01ca8b0].

59
60
61
62
63
64
65
66
67
68

69
70
71
72
73
74
75
76
77
78
79
80
59
60
61
62
63
64
65



66

67
68


69
70
71
72
73
74
75







-
-
-
+
-


-
-







	[_socket release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"The socket of type %@ is already connected or bound and thus "
	    @"can't be connected or bound again!", _inClass];

	return _description;
}

- (OFTCPSocket*)socket
{
	OF_GETTER(_socket, NO)
}
@end

Modified src/exceptions/OFBindFailedException.m from [04bd4c8eb2] to [21f3f29bde].

74
75
76
77
78
79
80
81
82
83

84
85
86
87
88
89
90
91
92
93
94
95
74
75
76
77
78
79
80



81

82
83


84
85
86
87
88
89
90







-
-
-
+
-


-
-







	[_host release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Binding to port %" @PRIu16 @" on host %@ failed in class %@! "
	    ERRFMT, _port, _host, _inClass, ERRPARAM];

	return _description;
}

- (OFTCPSocket*)socket
{
	OF_GETTER(_socket, NO)
}

Modified src/exceptions/OFChangeDirectoryFailedException.m from [a9860585f3] to [557e04ff4b].

64
65
66
67
68
69
70
71
72
73

74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
64
65
66
67
68
69
70



71

72
73


74
75
76
77
78
79
80
81
82
83
84
85







-
-
-
+
-


-
-












	[_path release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to change to directory %@ in class %@! " ERRFMT, _path,
	    _inClass, ERRPARAM];

	return _description;
}

- (int)errNo
{
	return _errNo;
}

- (OFString*)path
{
	OF_GETTER(_path, NO)
}
@end

Modified src/exceptions/OFChangeFileModeFailedException.m from [319db3107f] to [26f1001170].

68
69
70
71
72
73
74
75
76
77

78
79
80
81
82
83
84
85
86
87
88
89
68
69
70
71
72
73
74



75

76
77


78
79
80
81
82
83
84







-
-
-
+
-


-
-







	[_path release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to change mode for file %@ to %d in class %@! " ERRFMT,
	    _path, _mode, _inClass, ERRPARAM];

	return _description;
}

- (int)errNo
{
	return _errNo;
}

Modified src/exceptions/OFChangeFileOwnerFailedException.m from [0b00f53cf5] to [2d53fe58fd].

75
76
77
78
79
80
81
82
83
84
85
86

87
88
89
90

91
92
93
94

95
96
97
98
99
100
101
102
103
104
105
75
76
77
78
79
80
81



82

83
84
85
86

87
88
89
90

91
92
93


94
95
96
97
98
99
100







-
-
-

-
+



-
+



-
+


-
-







	[_group release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	if (_group == nil)
		_description = [[OFString alloc] initWithFormat:
		return [OFString stringWithFormat:
		    @"Failed to change owner for file %@ to %@ in class %@! "
		    ERRFMT, _path, _owner, _inClass, ERRPARAM];
	else if (_owner == nil)
		_description = [[OFString alloc] initWithFormat:
		return [OFString stringWithFormat:
		    @"Failed to change group for file %@ to %@ in class %@! "
		    ERRFMT, _path, _group, _inClass, ERRPARAM];
	else
		_description = [[OFString alloc] initWithFormat:
		return [OFString stringWithFormat:
		    @"Failed to change owner for file %@ to %@:%@ in class %@! "
		    ERRFMT, _path, _owner, _group, _inClass, ERRPARAM];

	return _description;
}

- (int)errNo
{
	return _errNo;
}

Modified src/exceptions/OFConditionBroadcastFailedException.m from [cc9bbab33a] to [273e41aca8].

57
58
59
60
61
62
63
64
65
66

67
68
69
70
71
72
73
74
75
76
77
57
58
59
60
61
62
63



64

65


66
67
68
69
70
71
72







-
-
-
+
-

-
-







	[_condition release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Broadcasting a condition of type %@ failed!", _inClass];

	return _description;
}

- (OFCondition*)condition
{
	OF_GETTER(_condition, NO)
}
@end

Modified src/exceptions/OFConditionSignalFailedException.m from [3da88ce5d9] to [1db3313eef].

57
58
59
60
61
62
63
64
65
66

67
68
69
70
71
72
73
74
75
76
77
57
58
59
60
61
62
63



64

65


66
67
68
69
70
71
72







-
-
-
+
-

-
-







	[_condition release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Signaling a condition of type %@ failed!", _inClass];

	return _description;
}

- (OFCondition*)condition
{
	OF_GETTER(_condition, NO)
}
@end

Modified src/exceptions/OFConditionStillWaitingException.m from [ccf984394c] to [e4dc8f234e].

57
58
59
60
61
62
63
64
65
66

67
68
69
70
71
72
73
74
75
76
77
78
57
58
59
60
61
62
63



64

65
66


67
68
69
70
71
72
73







-
-
-
+
-


-
-







	[_condition release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Deallocation of a condition of type %@ was tried, even though a "
	    @"thread was still waiting for it!", _inClass];

	return _description;
}

- (OFCondition*)condition
{
	OF_GETTER(_condition, NO)
}
@end

Modified src/exceptions/OFConditionWaitFailedException.m from [8bbc25a706] to [15401b6dca].

57
58
59
60
61
62
63
64
65
66

67
68
69
70
71
72
73
74
75
76
77
57
58
59
60
61
62
63



64

65


66
67
68
69
70
71
72







-
-
-
+
-

-
-







	[_condition release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Waiting for a condition of type %@ failed!", _inClass];

	return _description;
}

- (OFCondition*)condition
{
	OF_GETTER(_condition, NO)
}
@end

Modified src/exceptions/OFConnectionFailedException.m from [ed77afb6a3] to [039141bbfb].

74
75
76
77
78
79
80
81
82
83

84
85
86
87
88
89
90
91
92
93
94
95
96
74
75
76
77
78
79
80



81

82
83
84


85
86
87
88
89
90
91







-
-
-
+
-



-
-







	[_host release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"A connection to %@ on port %" @PRIu16 @" could not be "
	    @"established in class %@! " ERRFMT, _host, _port, _inClass,
	    ERRPARAM];

	return _description;
}

- (OFTCPSocket*)socket
{
	OF_GETTER(_socket, NO)
}

Modified src/exceptions/OFCopyFileFailedException.m from [c8f8b1a133] to [0b1755f087].

69
70
71
72
73
74
75
76
77
78

79
80
81
82
83
84
85
86
87
88
89
90
69
70
71
72
73
74
75



76

77
78


79
80
81
82
83
84
85







-
-
-
+
-


-
-







	[_destinationPath release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to copy file %@ to %@ in class %@! " ERRFMT,
	    _sourcePath, _destinationPath, _inClass, ERRPARAM];

	return _description;
}

- (int)errNo
{
	return _errNo;
}

Modified src/exceptions/OFCreateDirectoryFailedException.m from [029fb950d4] to [2d67232c96].

64
65
66
67
68
69
70
71
72
73

74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
64
65
66
67
68
69
70



71

72
73


74
75
76
77
78
79
80
81
82
83
84
85







-
-
-
+
-


-
-












	[_path release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to create directory %@ in class %@! " ERRFMT, _path,
	    _inClass, ERRPARAM];

	return _description;
}

- (int)errNo
{
	return _errNo;
}

- (OFString*)path
{
	OF_GETTER(_path, NO)
}
@end

Modified src/exceptions/OFDeleteDirectoryFailedException.m from [55773e30a9] to [ad7ba77cb1].

64
65
66
67
68
69
70
71
72
73

74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
64
65
66
67
68
69
70



71

72
73


74
75
76
77
78
79
80
81
82
83
84
85







-
-
-
+
-


-
-












	[_path release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to delete directory %@ in class %@! " ERRFMT, _path,
	    _inClass, ERRPARAM];

	return _description;
}

- (int)errNo
{
	return _errNo;
}

- (OFString*)path
{
	OF_GETTER(_path, NO)
}
@end

Modified src/exceptions/OFDeleteFileFailedException.m from [65143331f2] to [443055fc12].

64
65
66
67
68
69
70
71
72
73

74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
64
65
66
67
68
69
70



71

72
73


74
75
76
77
78
79
80
81
82
83
84
85







-
-
-
+
-


-
-












	[_path release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to delete file %@ in class %@! " ERRFMT, _path, _inClass,
	    ERRPARAM];

	return _description;
}

- (int)errNo
{
	return _errNo;
}

- (OFString*)path
{
	OF_GETTER(_path, NO)
}
@end

Modified src/exceptions/OFEnumerationMutationException.m from [d10005f035] to [b04cbc1705].

58
59
60
61
62
63
64
65
66
67

68
69
70
71
72
73
74
75
76
77
78
58
59
60
61
62
63
64



65

66


67
68
69
70
71
72
73







-
-
-
+
-

-
-







	[_object release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Object of class %@ was mutated during enumeration!", _inClass];

	return _description;
}

- (id)object
{
	OF_GETTER(_object, NO)
}
@end

Modified src/exceptions/OFException.h from [0e7a48ed31] to [8f2a6df5f9].

23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
23
24
25
26
27
28
29

30
31
32
33
34
35
36







-







 *
 * The OFException class is the base class for all exceptions in ObjFW, except
 * the OFAllocFailedException.
 */
@interface OFException: OFObject
{
	Class _inClass;
	OFString *_description;
}

#ifdef OF_HAVE_PROPERTIES
@property (readonly) Class inClass;
#endif

/*!

Modified src/exceptions/OFException.m from [0dacb298b3] to [5040476f6b].

44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67

68
69
70
71

72
73
74
44
45
46
47
48
49
50







51
52
53
54
55
56
57



58

59
60

61


62







-
-
-
-
-
-
-







-
-
-
+
-


-
+
-
-

	self = [super init];

	_inClass = class;

	return self;
}

- (void)dealloc
{
	[_description release];

	[super dealloc];
}

- (Class)inClass
{
	return _inClass;
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"An exception of class %@ occurred in class %@!",
	    object_getClass(self), _inClass];

}
	return _description;
}
@end

Modified src/exceptions/OFHTTPRequestFailedException.m from [6a16e70139] to [00ce035b14].

19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
19
20
21
22
23
24
25

26
27
28
29
30
31
32







-







#include <stdlib.h>

#import "OFHTTPRequestFailedException.h"
#import "OFString.h"
#import "OFHTTPRequest.h"
#import "OFHTTPRequestReply.h"

#import "autorelease.h"
#import "common.h"

@implementation OFHTTPRequestFailedException
+ (instancetype)exceptionWithClass: (Class)class
			   request: (OFHTTPRequest*)request
			     reply: (OFHTTPRequestReply*)reply
{
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92

93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
65
66
67
68
69
70
71

72
73



74
75
76
77
78
79
80
81
82
83
84
85


86

87
88




89
90
91
92
93
94
95
96
97
98
99
100







-


-
-
-












-
-
+
-


-
-
-
-












	[_reply release];

	[super dealloc];
}

- (OFString*)description
{
	void *pool;
	const char *type = "(unknown)";

	if (_description != nil)
		return _description;

	switch ([_request requestType]) {
	case OF_HTTP_REQUEST_TYPE_GET:
		type = "GET";
		break;
	case OF_HTTP_REQUEST_TYPE_HEAD:
		type = "HEAD";
		break;
	case OF_HTTP_REQUEST_TYPE_POST:
		type = "POST";
		break;
	}

	pool = objc_autoreleasePoolPush();

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"A HTTP %s request in class %@ with URL %@ failed with code %d",
	    type, _inClass, [_request URL], [_reply statusCode]];

	objc_autoreleasePoolPop(pool);

	return _description;
}

- (OFHTTPRequest*)request
{
	OF_GETTER(_request, NO)
}

- (OFHTTPRequestReply*)reply
{
	OF_GETTER(_reply, NO)
}
@end

Modified src/exceptions/OFHashAlreadyCalculatedException.m from [1c6147719c] to [6c880cfe21].

59
60
61
62
63
64
65
66
67
68

69
70
71
72
73
74
75
76
77
78
79
80
59
60
61
62
63
64
65



66

67
68


69
70
71
72
73
74
75







-
-
-
+
-


-
-







	[_hashObject release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"The hash has already been calculated in class %@ and thus no new "
	    @"data can be added", _inClass];

	return _description;
}

- (OFHash*)hashObject
{
	OF_GETTER(_hashObject, NO)
}
@end

Modified src/exceptions/OFInitializationFailedException.m from [5f9ac7b48a] to [5b64ada8d8].

18
19
20
21
22
23
24
25
26
27

28
29
30

31
32
33
18
19
20
21
22
23
24



25

26

27


28







-
-
-
+
-

-
+
-
-


#import "OFInitializationFailedException.h"
#import "OFString.h"

@implementation OFInitializationFailedException
- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Initialization failed for or in class %@!", _inClass];

}
	return _description;
}
@end

Modified src/exceptions/OFInvalidArgumentException.m from [98b7296261] to [64e81089ac].

51
52
53
54
55
56
57
58
59
60

61
62
63
64
65
66
67
68
69
70
71
72
51
52
53
54
55
56
57



58

59
60


61
62
63
64
65
66
67







-
-
-
+
-


-
-







	_selector = selector;

	return self;
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"The argument or receiver for method %s of class %@ is invalid!",
	    sel_getName(_selector), _inClass];

	return _description;
}

- (SEL)selector
{
	return _selector;
}
@end

Modified src/exceptions/OFInvalidEncodingException.m from [890bb48a2b] to [b6ac8f14cb].

18
19
20
21
22
23
24
25
26
27

28
29
30

31
32
33
18
19
20
21
22
23
24



25

26

27


28







-
-
-
+
-

-
+
-
-


#import "OFInvalidEncodingException.h"
#import "OFString.h"

@implementation OFInvalidEncodingException
- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"The encoding is invalid for class %@!", _inClass];

}
	return _description;
}
@end

Modified src/exceptions/OFInvalidFormatException.m from [7b073a6102] to [4ebc851ed7].

18
19
20
21
22
23
24
25
26
27

28
29
30

31
32
33
18
19
20
21
22
23
24



25

26

27


28







-
-
-
+
-

-
+
-
-


#import "OFInvalidFormatException.h"
#import "OFString.h"

@implementation OFInvalidFormatException
- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"The format is invalid for class %@!", _inClass];

}
	return _description;
}
@end

Modified src/exceptions/OFInvalidJSONException.m from [477577db36] to [e6375e0b23].

49
50
51
52
53
54
55
56
57
58

59
60
61
62
63
64
65
66
67
68
69
70
49
50
51
52
53
54
55



56

57
58


59
60
61
62
63
64
65







-
-
-
+
-


-
-







	_line = line;

	return self;
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"The JSON representation class %@ tried to parse is invalid in "
	    @"line %zd!", _inClass, _line];

	return _description;
}

- (size_t)line
{
	return _line;
}
@end

Modified src/exceptions/OFInvalidServerReplyException.m from [33d6295197] to [ec481228e3].

18
19
20
21
22
23
24
25
26
27

28
29
30

31
32
33
18
19
20
21
22
23
24



25

26

27


28







-
-
-
+
-

-
+
-
-


#import "OFInvalidServerReplyException.h"
#import "OFString.h"

@implementation OFInvalidServerReplyException
- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Got an invalid reply from the server in class %@", _inClass];

}
	return _description;
}
@end

Modified src/exceptions/OFLinkFailedException.m from [f22db317c8] to [e104c85a1d].

70
71
72
73
74
75
76
77
78
79

80
81
82
83
84
85
86
87
88
89
90
91
70
71
72
73
74
75
76



77

78
79


80
81
82
83
84
85
86







-
-
-
+
-


-
-







	[_destinationPath release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to link file %@ to %@ in class %@! " ERRFMT, _sourcePath,
	    _destinationPath, _inClass, ERRPARAM];

	return _description;
}

- (int)errNo
{
	return _errNo;
}

Modified src/exceptions/OFListenFailedException.m from [df82ad09d2] to [ebfc86a92a].

64
65
66
67
68
69
70
71
72
73

74
75
76
77
78
79
80
81
82
83
84
85
64
65
66
67
68
69
70



71

72
73


74
75
76
77
78
79
80







-
-
-
+
-


-
-







	[_socket release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to listen in socket of type %@ with a back log of %d! "
	    ERRFMT, _inClass, _backLog, ERRPARAM];

	return _description;
}

- (OFTCPSocket*)socket
{
	OF_GETTER(_socket, NO)
}

Modified src/exceptions/OFLockFailedException.m from [71c95c97b9] to [99d66d97f5].

44
45
46
47
48
49
50
51
52
53

54
55
56
57
58
59
60
61
62
63
64
65
44
45
46
47
48
49
50



51

52
53


54
55
56
57
58
59
60







-
-
-
+
-


-
-







	[_lock release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"A lock of type %@ could not be locked in class %@!",
	    [_lock class], _inClass];

	return _description;
}

- (id <OFLocking>)lock
{
	OF_GETTER(_lock, NO)
}
@end

Modified src/exceptions/OFMalformedXMLException.m from [92f13cee04] to [ea4e6e4445].

45
46
47
48
49
50
51
52
53
54
55
56

57
58
59
60

61
62
63
64
65
66
67
68
69
45
46
47
48
49
50
51



52

53
54
55
56

57


58
59
60
61
62
63
64







-
-
-

-
+



-
+
-
-







	[_parser release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	if (_parser != nil)
		_description = [[OFString alloc] initWithFormat:
		return [OFString stringWithFormat:
		    @"The XML parser in class %@ encountered malformed XML!",
		    _inClass];
	else
		_description = @"An XML parser encountered malformed XML!";
		return @"An XML parser encountered malformed XML!";

	return _description;
}

- (OFXMLParser*)parser
{
	OF_GETTER(_parser, NO)
}
@end

Modified src/exceptions/OFMemoryNotPartOfObjectException.m from [b794b10a09] to [59ada58b51].

49
50
51
52
53
54
55
56
57
58

59
60
61
62
63
64
65
66
67
68
69
70
71
72
49
50
51
52
53
54
55



56

57
58
59
60


61
62
63
64
65
66
67







-
-
-
+
-




-
-







	_pointer = pointer;

	return self;
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Memory at %p was not allocated as part of object of class %@, "
	    @"thus the memory allocation was not changed! It is also possible "
	    @"that there was an attempt to free the same memory twice.",
	    _pointer, _inClass];

	return _description;
}

- (void*)pointer
{
	return _pointer;
}
@end

Modified src/exceptions/OFNotConnectedException.m from [202a3a6c5f] to [096c56ad4d].

59
60
61
62
63
64
65
66
67
68

69
70
71
72
73
74
75
76
77
78
79
59
60
61
62
63
64
65



66

67


68
69
70
71
72
73
74







-
-
-
+
-

-
-







	[_socket release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"The socket of type %@ is not connected or bound!", _inClass];

	return _description;
}

- (OFStreamSocket*)socket
{
	OF_GETTER(_socket, NO)
}
@end

Modified src/exceptions/OFNotImplementedException.m from [7dc7df3c42] to [08c4d073ff].

51
52
53
54
55
56
57
58
59
60

61
62
63
64
65
66
67
68
69
70
71
72
51
52
53
54
55
56
57



58

59
60


61
62
63
64
65
66
67







-
-
-
+
-


-
-







	_selector = selector;

	return self;
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"The selector %s is not understood by class %@ or not (fully) "
	    @"implemented!", sel_getName(_selector), _inClass];

	return _description;
}

- (SEL)selector
{
	return _selector;
}
@end

Modified src/exceptions/OFOpenFileFailedException.m from [fd065f5f06] to [4e0dc54767].

69
70
71
72
73
74
75
76
77
78

79
80
81
82
83
84
85
86
87
88
89
90
69
70
71
72
73
74
75



76

77
78


79
80
81
82
83
84
85







-
-
-
+
-


-
-







	[_mode release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to open file %@ with mode %@ in class %@! " ERRFMT, _path,
	    _mode, _inClass, ERRPARAM];

	return _description;
}

- (int)errNo
{
	return _errNo;
}

Modified src/exceptions/OFOutOfMemoryException.m from [632b122d6b] to [598df3b1e8].

35
36
37
38
39
40
41
42
43
44
45
46

47
48
49
50

51
52
53
54
55
56
57
58
59
60
35
36
37
38
39
40
41



42

43
44
45
46

47
48


49
50
51
52
53
54
55







-
-
-

-
+



-
+

-
-







	_requestedSize = requestedSize;

	return self;
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	if (_requestedSize != 0)
		_description = [[OFString alloc] initWithFormat:
		return [OFString stringWithFormat:
		    @"Could not allocate %zu bytes in class %@!",
		    _requestedSize, _inClass];
	else
		_description = [[OFString alloc] initWithFormat:
		return [OFString stringWithFormat:
		    @"Could not allocate enough memory in class %@!", _inClass];

	return _description;
}

- (size_t)requestedSize
{
	return _requestedSize;
}
@end

Modified src/exceptions/OFOutOfRangeException.m from [adf5140fee] to [7a69a18b2f].

18
19
20
21
22
23
24
25
26
27

28
29
30

31
32
33
18
19
20
21
22
23
24



25

26

27


28







-
-
-
+
-

-
+
-
-


#import "OFOutOfRangeException.h"
#import "OFString.h"

@implementation OFOutOfRangeException
- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Value out of range in class %@!", _inClass];

}
	return _description;
}
@end

Modified src/exceptions/OFReadFailedException.m from [c76f9e9235] to [310691b3aa].

20
21
22
23
24
25
26
27
28
29

30
31
32
33

34
35
36
20
21
22
23
24
25
26



27

28
29

30


31







-
-
-
+
-


-
+
-
-

#import "OFString.h"

#import "common.h"

@implementation OFReadFailedException
- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to read %zu bytes in class %@! " ERRFMT, _requestedLength,
	    _inClass, ERRPARAM];

}
	return _description;
}
@end

Modified src/exceptions/OFRenameFileFailedException.m from [300b802be6] to [33a7d5cf29].

69
70
71
72
73
74
75
76
77
78

79
80
81
82
83
84
85
86
87
88
89
90
69
70
71
72
73
74
75



76

77
78


79
80
81
82
83
84
85







-
-
-
+
-


-
-







	[_destinationPath release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to rename file %@ to %@ in class %@! " ERRFMT,
	    _sourcePath, _destinationPath, _inClass, ERRPARAM];

	return _description;
}

- (int)errNo
{
	return _errNo;
}

Modified src/exceptions/OFSeekFailedException.m from [b267411948] to [23aa08e709].

68
69
70
71
72
73
74
75
76
77

78
79
80
81
82
83
84
85
86
87
88
68
69
70
71
72
73
74



75

76


77
78
79
80
81
82
83







-
-
-
+
-

-
-







	[_stream release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Seeking failed in class %@! " ERRFMT, _inClass, ERRPARAM];

	return _description;
}

- (OFSeekableStream*)stream
{
	OF_GETTER(_stream, NO)
}

Modified src/exceptions/OFSetOptionFailedException.m from [440af04fa4] to [ba006ade87].

59
60
61
62
63
64
65
66
67
68

69
70
71
72
73
74
75
76
77
78
79
59
60
61
62
63
64
65



66

67


68
69
70
71
72
73
74







-
-
-
+
-

-
-







	[_stream release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Setting an option in class %@ failed!", _inClass];

	return _description;
}

- (OFStream*)stream
{
	OF_GETTER(_stream, NO)
}
@end

Modified src/exceptions/OFStillLockedException.m from [3a0467e9cd] to [2869a17627].

44
45
46
47
48
49
50
51
52
53

54
55
56
57
58
59
60
61
62
63
64
65
44
45
46
47
48
49
50



51

52
53


54
55
56
57
58
59
60







-
-
-
+
-


-
-







	[_lock release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Deallocation of a lock of type %@ was tried in class %@, even "
	    @"though it was still locked!", [_lock class], _inClass];

	return _description;
}

- (id <OFLocking>)lock
{
	OF_GETTER(_lock, NO)
}
@end

Modified src/exceptions/OFSymlinkFailedException.m from [98d414e112] to [fbff44390e].

70
71
72
73
74
75
76
77
78
79

80
81
82
83
84
85
86
87
88
89
90
91
70
71
72
73
74
75
76



77

78
79


80
81
82
83
84
85
86







-
-
-
+
-


-
-







	[_destinationPath release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to symlink file %@ to %@ in class %@! " ERRFMT,
	    _sourcePath, _destinationPath, _inClass, ERRPARAM];

	return _description;
}

- (int)errNo
{
	return _errNo;
}

Modified src/exceptions/OFThreadJoinFailedException.m from [1398fa6a7a] to [03a6cbd6da].

57
58
59
60
61
62
63
64
65
66

67
68
69
70
71
72
73
74
75
76
77
78
57
58
59
60
61
62
63



64

65
66


67
68
69
70
71
72
73







-
-
-
+
-


-
-







	[_thread release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Joining a thread of class %@ failed! Most likely, another thread "
	    @"already waits for the thread to join.", _inClass];

	return _description;
}

- (OFThread*)thread
{
	OF_GETTER(_thread, NO)
}
@end

Modified src/exceptions/OFThreadStartFailedException.m from [c4d2751745] to [091ac82c2b].

57
58
59
60
61
62
63
64
65
66

67
68
69
70
71
72
73
74
75
76
77
57
58
59
60
61
62
63



64

65


66
67
68
69
70
71
72







-
-
-
+
-

-
-







	[_thread release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Starting a thread of class %@ failed!", _inClass];

	return _description;
}

- (OFThread*)thread
{
	OF_GETTER(_thread, NO)
}
@end

Modified src/exceptions/OFThreadStillRunningException.m from [fb8e07d9a0] to [c9eed87446].

57
58
59
60
61
62
63
64
65
66

67
68
69
70
71
72
73
74
75
76
77
78
57
58
59
60
61
62
63



64

65
66


67
68
69
70
71
72
73







-
-
-
+
-


-
-







	[_thread release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Deallocation of a thread of type %@ was tried, even though it "
	    @"was still running!", _inClass];

	return _description;
}

- (OFThread*)thread
{
	OF_GETTER(_thread, NO)
}
@end

Modified src/exceptions/OFTruncatedDataException.m from [0c9b919885] to [614023628e].

18
19
20
21
22
23
24
25
26
27

28
29
30
31

32
33
34
18
19
20
21
22
23
24



25

26
27

28


29







-
-
-
+
-


-
+
-
-


#import "OFTruncatedDataException.h"
#import "OFString.h"

@implementation OFTruncatedDataException
- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Truncated data was received or produced in class %@ while it "
	    @"should not have been truncated!", _inClass];

}
	return _description;
}
@end

Modified src/exceptions/OFUnboundNamespaceException.m from [8482013ced] to [e961348a70].

86
87
88
89
90
91
92
93
94
95
96
97

98
99
100
101

102
103
104
105




106
107
108
109
110
111
112
113
114
115
116
117
86
87
88
89
90
91
92



93

94
95
96
97

98
99
100


101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116







-
-
-

-
+



-
+


-
-
+
+
+
+












	[_prefix release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	if (_namespace != nil)
		_description = [[OFString alloc] initWithFormat:
		return [OFString stringWithFormat:
		    @"The namespace %@ is not bound in class %@", _namespace,
		    _inClass];
	else if (_prefix != nil)
		_description = [[OFString alloc] initWithFormat:
		return [OFString stringWithFormat:
		    @"The prefix %@ is not bound to any namespace in class %@",
		    _prefix, _inClass];

	return _description;
	else
		return [OFString stringWithFormat:
		    @"A namespace or prefix is not bound in class %@",
		    _inClass];
}

- (OFString*)namespace
{
	OF_GETTER(_namespace, NO)
}

- (OFString*)prefix
{
	OF_GETTER(_prefix, NO)
}
@end

Modified src/exceptions/OFUnlockFailedException.m from [93c2224d43] to [5404c0c1bb].

44
45
46
47
48
49
50
51
52
53

54
55
56
57
58
59
60
61
62
63
64
65
44
45
46
47
48
49
50



51

52
53


54
55
56
57
58
59
60







-
-
-
+
-


-
-







	[_lock release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"A lock of class %@ could not be unlocked in class %@!",
	    [_lock class], _inClass];

	return _description;
}

- (id <OFLocking>)lock
{
	OF_GETTER(_lock, NO)
}
@end

Modified src/exceptions/OFUnsupportedProtocolException.m from [50dbd9a635] to [69198622a9].

64
65
66
67
68
69
70
71
72
73

74
75
76
77
78
79
80
81
82
83
84
85
64
65
66
67
68
69
70



71

72
73


74
75
76
77
78
79
80







-
-
-
+
-


-
-







	[_URL release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"The protocol of URL %@ is not supported by class %@", _URL,
	    _inClass];

	return _description;
}

- (OFURL*)URL
{
	OF_GETTER(_URL, NO)
}
@end

Modified src/exceptions/OFUnsupportedVersionException.m from [23d60f6018] to [a07066326a].

63
64
65
66
67
68
69
70
71
72

73
74
75
76
77
78
79
80
81
82
83
84
63
64
65
66
67
68
69



70

71
72


73
74
75
76
77
78
79







-
-
-
+
-


-
-







	[_version release];

	[super dealloc];
}

- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Version %@ of the format or protocol is not supported by class "
	    @"%@", _version, _inClass];

	return _description;
}

- (OFString*)version
{
	OF_GETTER(_version, NO)
}
@end

Modified src/exceptions/OFWriteFailedException.m from [659d063c26] to [180ffc9797].

20
21
22
23
24
25
26
27
28
29

30
31
32
33

34
35
36
20
21
22
23
24
25
26



27

28
29

30


31







-
-
-
+
-


-
+
-
-

#import "OFString.h"

#import "common.h"

@implementation OFWriteFailedException
- (OFString*)description
{
	if (_description != nil)
		return _description;

	return [OFString stringWithFormat:
	_description = [[OFString alloc] initWithFormat:
	    @"Failed to write %zu bytes in class %@! " ERRFMT, _requestedLength,
	    _inClass, ERRPARAM];

}
	return _description;
}
@end