Commit 20993081 authored by Kevin Wolf's avatar Kevin Wolf
Browse files

block: Fix protocol detection for Windows devices



We can't assume the file protocol for Windows devices, they need the same
detection as other files for which an explicit protocol is not specified.

Signed-off-by: default avatarKevin Wolf <kwolf@redhat.com>
parent b666d239
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -287,16 +287,18 @@ static BlockDriver *find_protocol(const char *filename)
    char protocol[128];
    int len;
    const char *p;
    int is_drive;

    /* TODO Drivers without bdrv_file_open must be specified explicitly */

#ifdef _WIN32
    if (is_windows_drive(filename) ||
        is_windows_drive_prefix(filename))
        return bdrv_find_format("file");
    is_drive = is_windows_drive(filename) ||
        is_windows_drive_prefix(filename);
#else
    is_drive = 0;
#endif
    p = strchr(filename, ':');
    if (!p) {
    if (!p || is_drive) {
        drv1 = find_hdev_driver(filename);
        if (!drv1) {
            drv1 = bdrv_find_format("file");