• Anton Khirnov's avatar
    lavd/v4l2: detect device name truncation · 877b6a9e
    Anton Khirnov authored
    Silences the following warning with gcc 10:
    src/libavdevice/v4l2.c: In function ‘v4l2_get_device_list’:
    src/libavdevice/v4l2.c:1042:64: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 251 [-Wformat-truncation=]
     1042 |         ret = snprintf(device_name, sizeof(device_name), "/dev/%s", entry->d_name);
          |                                                                ^~
    src/libavdevice/v4l2.c:1042:15: note: ‘snprintf’ output between 6 and 261 bytes into a destination of size 256
     1042 |         ret = snprintf(device_name, sizeof(device_name), "/dev/%s", entry->d_name);
          |               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    Previous patches intending to silence it have proposed increasing the
    buffer size, but doing that correctly seems to be tricky. Failing on
    truncation is simpler and just as effective (as excessively long device
    names are unlikely).
    877b6a9e
v4l2.c 37.2 KB