| 1503 | |
| 1504 | |
| 1505 | STATIC |
| 1506 | BOOLEAN |
| 1507 | FillinCustomEntry ( |
| 1508 | IN OUT CUSTOM_LOADER_ENTRY *Entry, |
| 1509 | const TagDict* DictPointer, |
| 1510 | IN BOOLEAN SubEntry |
| 1511 | ) |
| 1512 | { |
| 1513 | const TagStruct* Prop; |
| 1514 | |
| 1515 | if ((Entry == NULL) || (DictPointer == NULL)) { |
| 1516 | return FALSE; |
| 1517 | } |
| 1518 | |
| 1519 | Prop = DictPointer->propertyForKey("Disabled"); |
| 1520 | if (IsPropertyNotNullAndTrue(Prop)) { |
| 1521 | return FALSE; |
| 1522 | } |
| 1523 | |
| 1524 | Prop = DictPointer->propertyForKey("Volume"); |
| 1525 | if (Prop != NULL && (Prop->isString())) { |
| 1526 | Entry->Volume = Prop->getString()->stringValue(); |
| 1527 | } |
| 1528 | |
| 1529 | Prop = DictPointer->propertyForKey("Path"); |
| 1530 | if (Prop != NULL && (Prop->isString())) { |
| 1531 | Entry->Path = Prop->getString()->stringValue(); |
| 1532 | } |
| 1533 | |
| 1534 | Prop = DictPointer->propertyForKey("Settings"); |
| 1535 | if (Prop != NULL && (Prop->isString())) { |
| 1536 | Entry->Settings = Prop->getString()->stringValue(); |
| 1537 | } |
| 1538 | |
| 1539 | Prop = DictPointer->propertyForKey("CommonSettings"); |
| 1540 | Entry->CommonSettings = IsPropertyNotNullAndTrue(Prop); |
| 1541 | |
| 1542 | |
| 1543 | Prop = DictPointer->propertyForKey("AddArguments"); |
| 1544 | if (Prop != NULL && (Prop->isString())) { |
| 1545 | // if (Entry->LoadOptions.notEmpty()) { |
| 1546 | // Entry->Options.SPrintf("%s %s", Entry->Options.c_str(), Prop->getString()->stringValue()); |
| 1547 | // } else { |
| 1548 | // Entry->Options.SPrintf("%s", Prop->getString()->stringValue()); |
| 1549 | // } |
| 1550 | Entry->LoadOptions.import(Split<XString8Array>(Prop->getString()->stringValue(), " ")); |
| 1551 | } else { |
| 1552 | Prop = DictPointer->propertyForKey("Arguments"); |
| 1553 | if (Prop != NULL && (Prop->isString())) { |
| 1554 | // Entry->Options.SPrintf("%s", Prop->getString()->stringValue()); |
| 1555 | Entry->LoadOptions = Split<XString8Array>(Prop->getString()->stringValue(), " "); |
| 1556 | Entry->Flags = OSFLAG_SET(Entry->Flags, OSFLAG_NODEFAULTARGS); |
| 1557 | } |
| 1558 | } |
| 1559 | Prop = DictPointer->propertyForKey("Title"); |
| 1560 | if (Prop != NULL && (Prop->isString())) { |
| 1561 | Entry->Title = Prop->getString()->stringValue(); |
| 1562 | } |
no test coverage detected