ObjFW  Diff

Differences From Artifact [3d02f5dcdc]:

To Artifact [612bc88548]:

  • File tests/TestsAppDelegate.m — part of check-in [ffb91daffe] at 2013-06-11 23:33:16 on branch trunk — Initial sockets support for the Wii.

    Not functional yet due to bugs in the SDK.
    Bugs found so far:

    * Binding to port 0 fails instead of choosing a free port.
    * gethostbyname() does not work for IPs.
    * getsockname() is missing.
    * struct sockaddr_storage is missing.

    I have not decided yet whether I fix those bugs in the SDK (I already
    implemented getsockname() and added struct sockaddr_stroage and it seems
    to work) or if I work around them in ObjFW. This will mainly depend on
    how cooperative the developers of the Wii SDK are. (user: js, size: 5970) [annotate] [blame] [check-ins using]


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
85
86
87
88
89
90
91


92
93
94
95
96
97





98
99

100
101
102
103
104
105
106







-
-
+
+
+



-
-
-
-
-
+
+
-







		return of_application_main(&argc, &argv,
		    [TestsAppDelegate class]);
	} @catch (id e) {
		TestsAppDelegate *delegate =
		    [[OFApplication sharedApplication] delegate];
		OFString *string = [OFString stringWithFormat:
		    @"\nRuntime error: Unhandled exception:\n%@\n", e];
		OFString *backtrace = [[e backtrace]
		    componentsJoinedByString: @"\n  "];
		OFString *backtrace = [OFString stringWithFormat:
		    @"\nBacktrace:\n  %@\n\n",
		    [[e backtrace] componentsJoinedByString: @"\n  "];

		[delegate outputString: string
			       inColor: RED];
		if (backtrace != nil) {
			backtrace = [OFString stringWithFormat:
			    @"\nBacktrace:\n  %@\n\n", backtrace];
			[delegate outputString: backtrace
				       inColor: RED];
		[delegate outputString: backtrace
			       inColor: RED];
		}
		[delegate outputString: @"Press home button to exit!\n"
			       inColor: NO_COLOR];
		for (;;) {
			WPAD_ScanPads();

			if (WPAD_ButtonsDown(0) & WPAD_BUTTON_HOME)
				[OFApplication terminateWithStatus: 1];