Skip to content
This repository was archived by the owner on Aug 31, 2021. It is now read-only.

Commit d00bc32

Browse files
Remove more /*UNCHECKED*/s from AppleEvents handling
1 parent 2ca8583 commit d00bc32

File tree

1 file changed

+19
-14
lines changed

1 file changed

+19
-14
lines changed

engine/src/dskmac.cpp

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8413,6 +8413,7 @@ static OSStatus getAEParams(const AppleEvent *ae, AEKeyword key, MCStringRef &r_
84138413
Size rSize;
84148414
DescType dt;
84158415
Size s;
8416+
bool t_success = true;
84168417
if ((errno = AESizeOfParam(ae, key, &dt, &s)) == noErr)
84178418
{
84188419
switch (dt)
@@ -8428,14 +8429,14 @@ static OSStatus getAEParams(const AppleEvent *ae, AEKeyword key, MCStringRef &r_
84288429
{
84298430
byte_t *result = new byte_t[s + 1];
84308431
AEGetParamPtr(ae, key, dt, &rType, result, s, &rSize);
8431-
/* UNCHECKED */ MCStringCreateWithBytesAndRelease(result, s, kMCStringEncodingUTF8, false, r_result);
8432+
t_success = MCStringCreateWithBytesAndRelease(result, s, kMCStringEncodingUTF8, false, r_result);
84328433
break;
84338434
}
84348435
case typeChar:
84358436
{
84368437
char_t *result = new char_t[s + 1];
84378438
AEGetParamPtr(ae, key, dt, &rType, result, s, &rSize);
8438-
/* UNCHECKED */ MCStringCreateWithNativeChars(result, s, r_result);
8439+
t_success = MCStringCreateWithNativeChars(result, s, r_result);
84398440
delete[] result;
84408441
break;
84418442
}
@@ -8445,64 +8446,64 @@ static OSStatus getAEParams(const AppleEvent *ae, AEKeyword key, MCStringRef &r_
84458446
AEGetParamPtr(ae, key, dt, &rType, &t_type, s, &rSize);
84468447
char *result;
84478448
result = FourCharCodeToString(t_type);
8448-
/* UNCHECKED */ MCStringCreateWithNativeChars((char_t*)result, 4, r_result);
8449+
t_success = MCStringCreateWithNativeChars((char_t*)result, 4, r_result);
84498450
delete[] result;
84508451
}
84518452
break;
84528453
case typeSInt16:
84538454
{
84548455
int16_t i;
84558456
AEGetParamPtr(ae, key, dt, &rType, &i, s, &rSize);
8456-
/* UNCHECKED */ MCStringFormat(r_result, PRId16, i);
8457+
t_success = MCStringFormat(r_result, PRId16, i);
84578458
break;
84588459
}
84598460
case typeSInt32:
84608461
{
84618462
int32_t i;
84628463
AEGetParamPtr(ae, key, dt, &rType, &i, s, &rSize);
8463-
/* UNCHECKED */ MCStringFormat(r_result, PRId32, i);
8464+
t_success = MCStringFormat(r_result, PRId32, i);
84648465
break;
84658466
}
84668467
case typeSInt64:
84678468
{
84688469
int64_t i;
84698470
AEGetParamPtr(ae, key, dt, &rType, &i, s, &rSize);
8470-
/* UNCHECKED */ MCStringFormat(r_result, PRId64, i);
8471+
t_success = MCStringFormat(r_result, PRId64, i);
84718472
break;
84728473
}
84738474
case typeIEEE32BitFloatingPoint:
84748475
{
84758476
float32_t f;
84768477
AEGetParamPtr(ae, key, dt, &rType, &f, s, &rSize);
8477-
/* UNCHECKED */ MCStringFormat(r_result, "%12.12g", f);
8478+
t_success = MCStringFormat(r_result, "%12.12g", f);
84788479
break;
84798480
}
84808481
case typeIEEE64BitFloatingPoint:
84818482
{
84828483
float64_t f;
84838484
AEGetParamPtr(ae, key, dt, &rType, &f, s, &rSize);
8484-
/* UNCHECKED */ MCStringFormat(r_result, "%12.12g", f);
8485+
t_success = MCStringFormat(r_result, "%12.12g", f);
84858486
break;
84868487
}
84878488
case typeUInt16:
84888489
{
84898490
uint16_t i;
84908491
AEGetParamPtr(ae, key, dt, &rType, &i, s, &rSize);
8491-
/* UNCHECKED */ MCStringFormat(r_result, PRIu16, i);
8492+
t_success = MCStringFormat(r_result, PRIu16, i);
84928493
break;
84938494
}
84948495
case typeUInt32:
84958496
{
84968497
uint32_t i;
84978498
AEGetParamPtr(ae, key, dt, &rType, &i, s, &rSize);
8498-
/* UNCHECKED */ MCStringFormat(r_result, PRIu32, i);
8499+
t_success = MCStringFormat(r_result, PRIu32, i);
84998500
break;
85008501
}
85018502
case typeUInt64:
85028503
{
85038504
uint64_t i;
85048505
AEGetParamPtr(ae, key, dt, &rType, &i, s, &rSize);
8505-
/* UNCHECKED */ MCStringFormat(r_result, PRIu64, i);
8506+
t_success = MCStringFormat(r_result, PRIu64, i);
85068507
break;
85078508
}
85088509
case typeNull:
@@ -8513,22 +8514,26 @@ static OSStatus getAEParams(const AppleEvent *ae, AEKeyword key, MCStringRef &r_
85138514
{
85148515
FSSpec fs;
85158516
errno = AEGetParamPtr(ae, key, dt, &rType, &fs, s, &rSize);
8516-
/* UNCHECKED */ MCS_mac_FSSpec2path(&fs, r_result);
8517+
t_success = MCS_mac_FSSpec2path(&fs, r_result);
85178518
}
85188519
break;
85198520
#endif
85208521
case typeFSRef:
85218522
{
85228523
FSRef t_fs_ref;
85238524
errno = AEGetParamPtr(ae, key, dt, &rType, &t_fs_ref, s, &rSize);
8524-
/* UNCHECKED */ MCS_mac_fsref_to_path(t_fs_ref, r_result);
8525+
t_success = MCS_mac_fsref_to_path(t_fs_ref, r_result);
85258526
}
85268527
break;
85278528
default:
8528-
/* UNCHECKED */ MCStringFormat(r_result, "unknown type %4.4s", (char*)&dt);
8529+
t_success = MCStringFormat(r_result, "unknown type %4.4s", (char*)&dt);
85298530
break;
85308531
}
85318532
}
8533+
8534+
if (!t_success && errno == 0)
8535+
errno = ioErr;
8536+
85328537
return errno;
85338538
}
85348539

0 commit comments

Comments
 (0)