Vladislav Vaintroub
76ed5b7ea0
MDEV-28746 follow-up: missed relative paths overflowing MAX_PATH
...
my_win_sopen() only checked the length of the raw path it was given, but
the server opens table files via paths relative to its data directory,
so a short relative path can still overflow MAX_PATH once
resolved against a long enough datadir. That case was misreported as
ER_BAD_DB_ERROR instead of ER_CANT_CREATE_TABLE/ENAMETOOLONG.
Resolve the path via GetFullPathName() before deciding whether the path
was too long, factored into resolved_path_too_long(). A failed resolve
is only treated as too-long when GetLastError() is
ERROR_FILENAME_EXCED_RANGE, so unrelated resolution failures keep
mapping to the original CreateFile error.
Also fix the global errtable mapping of ERROR_FILENAME_EXCED_RANGE: it
was mapped to ENOENT, so any Win32 call that got that error code
directly (not via ERROR_PATH_NOT_FOUND) was misreported the same way.
Assisted-by: Claude:claude-sonnet-5
2026-10-05 19:54:49 +02:00
..
2025-10-02 15:44:34 +03:00
2024-12-19 15:38:53 +02:00
2019-05-13 17:54:04 +03:00
2022-08-10 15:04:24 +02:00
2026-07-29 13:05:09 +02:00
2026-06-16 14:11:29 +03:00
2024-05-10 20:02:18 +02:00
2024-04-10 17:01:24 +03:00
2026-04-16 19:00:12 +10:00
2023-08-04 08:01:06 +02:00
2024-11-29 13:43:17 +02:00
2024-07-05 13:26:37 +10:00
2020-03-10 19:24:22 +01:00
2021-11-30 15:16:16 +11:00
2020-05-13 14:25:06 +03:00
2026-10-01 20:08:50 +02:00
2019-05-11 21:29:06 +03:00
2019-05-19 20:55:37 +02:00
2020-01-28 12:29:23 +04:00
2019-05-11 22:19:05 +03:00
2026-07-22 13:22:04 +02:00
2026-04-16 19:00:12 +10:00
2019-05-14 17:18:46 +03:00
2025-09-04 18:08:39 +03:00
2026-09-14 15:09:31 +02:00
2019-05-11 21:29:06 +03:00
2019-05-11 21:29:06 +03:00
2020-01-28 12:29:23 +04:00
2021-06-06 13:21:03 +02:00
2019-05-11 21:29:06 +03:00
2025-07-12 14:59:11 +03:00
2019-05-11 22:19:05 +03:00
2019-05-11 21:29:06 +03:00
2020-03-10 19:24:22 +01:00
2019-05-11 21:29:06 +03:00
2021-06-06 13:21:03 +02:00
2024-02-20 11:22:45 +02:00
2019-05-11 21:29:06 +03:00
2019-05-11 21:29:06 +03:00
2023-02-27 19:25:44 +02:00
2021-06-06 13:21:03 +02:00
2023-11-27 19:08:14 +02:00
2019-05-11 21:29:06 +03:00
2026-09-14 15:09:31 +02:00
2026-04-16 19:00:12 +10:00
2019-05-14 17:18:46 +03:00
2019-05-13 17:54:04 +03:00
2025-10-09 13:29:46 +03:00
2019-05-11 19:15:57 +03:00
2019-05-19 20:55:37 +02:00
2023-11-08 12:59:00 +01:00
2022-04-25 09:40:40 +03:00
2026-03-12 13:57:59 +05:30
2020-02-01 14:56:05 +02:00
2024-12-11 17:21:01 +11:00
2025-03-24 15:36:35 +04:00
2022-12-13 18:01:49 +02:00
2019-05-11 21:29:06 +03:00
2019-05-11 22:19:05 +03:00
2026-01-26 10:01:31 +01:00
2026-02-25 20:04:25 +02:00
2022-11-04 13:50:36 +01:00
2019-05-19 20:55:37 +02:00
2024-10-16 11:46:19 +11:00
2022-11-13 13:12:37 +11:00
2021-06-06 13:21:03 +02:00
2026-06-05 08:21:25 +10:00
2024-09-26 18:47:12 +03:00
2021-05-09 13:26:03 +02:00
2026-04-20 23:05:43 +05:30
2026-07-29 13:05:09 +02:00
2026-09-14 15:09:31 +02:00
2026-04-16 19:00:12 +10:00
2019-05-11 21:29:06 +03:00
2024-11-23 08:14:22 -07:00
2019-05-19 20:55:37 +02:00
2023-10-14 13:36:11 +03:00
2025-09-15 09:01:14 +02:00
2019-05-11 21:29:06 +03:00
2020-11-23 12:16:45 +05:30
2021-09-24 11:49:28 +02:00
2021-06-06 13:21:03 +02:00
2020-02-04 23:23:50 +04:00
2021-05-19 22:27:27 +02:00
2025-09-14 19:24:07 +03:00
2026-03-31 09:46:50 +02:00
2019-05-11 18:30:45 +03:00
2025-03-06 09:40:55 +02:00
2022-10-25 14:25:42 +03:00
2019-05-11 21:29:06 +03:00
2024-07-08 21:52:08 +04:00
2019-05-19 20:55:37 +02:00
2026-04-16 19:00:12 +10:00
2022-12-13 16:58:58 +02:00
2022-07-31 14:54:37 +02:00
2024-11-23 08:14:22 -07:00
2019-05-10 20:52:00 +03:00
2021-03-19 11:14:53 +11:00
2026-05-15 13:30:21 +10:00
2021-06-06 13:21:03 +02:00
2024-10-31 10:01:01 +01:00
2026-07-29 13:05:09 +02:00
2025-09-14 19:24:07 +03:00
2024-12-11 17:21:01 +11:00
2026-04-24 17:39:44 +02:00
2023-08-10 19:52:04 +02:00
2024-05-05 21:37:08 +02:00
2021-10-29 18:29:01 +02:00
2026-09-14 15:09:31 +02:00
2023-05-19 13:21:34 +01:00
2021-06-06 13:21:03 +02:00
2026-10-05 19:54:49 +02:00
2026-10-05 19:54:49 +02:00
2019-05-14 17:18:46 +03:00
2020-04-02 23:54:08 +04:00
2025-11-19 07:05:49 -07:00
2022-12-13 16:58:58 +02:00
2025-08-21 15:17:20 +03:00
2024-11-23 08:14:22 -07:00
2024-11-23 08:14:22 -07:00
2025-09-04 18:08:39 +03:00
2023-02-06 21:25:02 +11:00
2021-06-06 13:21:03 +02:00
2021-05-19 06:48:36 +02:00
2019-05-11 21:29:06 +03:00
2019-05-10 20:52:00 +03:00
2019-05-11 21:29:06 +03:00
2026-04-16 19:00:12 +10:00
2026-07-29 13:05:09 +02:00
2026-08-04 09:01:06 +10:00
2026-07-29 13:05:09 +02:00
2024-07-17 21:25:40 +02:00
2024-12-10 12:12:20 +11:00
2025-01-14 18:56:14 +03:00
2021-02-08 12:16:29 +02:00
2024-11-29 13:43:17 +02:00
2019-05-14 17:18:46 +03:00