----------------------------------------------------------------------------*/
| 1590 | } |
| 1591 | /*----------------------------------------------------------------------------*/ |
| 1592 | char * |
| 1593 | parse_menu_str(char *dest, const char *src, size_t size) |
| 1594 | { |
| 1595 | char *p1, *p2; |
| 1596 | if (!dest || size == 0) |
| 1597 | return NULL; |
| 1598 | |
| 1599 | strncpy(dest, src, size); |
| 1600 | dest[size - 1] = '\x0'; |
| 1601 | |
| 1602 | /* replace "[ ]*\[" with "\t\[" */ |
| 1603 | p1 = p2 = strstr(dest, " ["); |
| 1604 | if (p1) { |
| 1605 | while (p1 != dest && *p1 == ' ') |
| 1606 | p1--; |
| 1607 | p1++; /* backup to space */ |
| 1608 | *p2 = '\t'; |
| 1609 | memmove(p1, p2, strlen(p2)); |
| 1610 | p1[strlen(p2)] = '\x0'; |
| 1611 | } |
| 1612 | return dest; |
| 1613 | } |