Huw Davies (@huw) commented about dlls/shell32/dde.c:
} if (argc >= 2) {
len = lstrlenW(last_group) + 1 + lstrlenW(argv[1]) + 5;
name = heap_alloc(len * sizeof(*name));
swprintf( name, len, L"%s/%s.lnk", last_group, argv[1] );
name = combine_path(last_group, argv[1], L".lnk"); } else {
const WCHAR *filename = PathFindFileNameW(argv[0]);
len = PathFindExtensionW(filename) - filename;
name = heap_alloc((lstrlenW(last_group) + 1 + len + 5) * sizeof(*name));
swprintf( name, lstrlenW(last_group) + 1 + len + 5, L"%s/%.*s.lnk", last_group, len, filename );
WCHAR *filename = wcsdup(PathFindFileNameW(argv[0]));
*PathFindExtensionW(filename) = '\0';
Personally, I find this rather ugly, could you use an intermediate variable to hold the `ext` ptr?