Commit Graph

37 Commits

Author SHA1 Message Date
Andrius Štikonas 7ecdaf3ac8 Fix resizing of fat partitions.
Workaround a bug in fatresize (or libparted) where resizing to
partition length failed. Instead try to resize to length - 1.

BUG: 407834
2020-10-04 22:21:58 +01:00
Andrius Štikonas 8534265421 REUSE: SPDX headers for src/fs/*. 2020-09-28 00:51:18 +01:00
Gaël PORTAY 9d6c98ff4a Replace FSFeature by QVariantMap
The object QVariant is a native object in the Qt world that represents
any type of value: boolean, integer, string, floating point, date,
UUID...

This change updates the API to use the object QVariant and provide a
more flexible API to represent the filesystem features.
2020-03-21 18:09:01 -04:00
Arnaud Ferraris d24191ebd8 Add support for filesystem-specific features
In some cases, it may be necessary to create a filesystem with specific features
enabled/disabled.

This PR makes it possible to create filesystems this way. It does so
by introducing a new m_Features member variable and the createWithFeatures()
function to the FileSystem base class. The latter function is implemented
for the btrfs, ext2/3/4 and FAT filesystems.

Additionnally, the CreateFileSystemJob has been modified to enable
creating/formatting filesystems with specific features enabled.

Differential Revision: https://phabricator.kde.org/D21903
CCBUG: 342178
2020-01-12 11:58:32 +00:00
Shubham Jangra d1a82f65d4 Revert "Remove redundant includes and refactor"
This reverts commit 4229b02fd2.
2019-06-12 22:11:11 +05:30
Shubham Jangra 4229b02fd2 Remove redundant includes and refactor 2019-06-10 23:07:06 +05:30
Andrius Štikonas dd0adbec42
Remove unused include. 2019-04-06 17:36:25 +01:00
Andrius Štikonas 80f5a32dc0 Remove remaining cases of call to dd binary.
BUG: 398154
2018-11-29 22:32:07 +00:00
Andrius Štikonas 622def3b56 Convert more enums to scoped enums. 2018-04-09 15:14:34 +01:00
Andrius Štikonas 17c8772240 Explicitely specify the scope of enum. 2018-04-07 19:54:30 +01:00
Andrius Štikonas 5123411f1f Add support for FAT12 file system. 2017-12-24 23:24:37 +00:00
Andrius Štikonas fcfd78cdc4 Add support for fatresize program. 2017-11-09 23:14:52 +00:00
Pali Rohár e957c220bd Disallow non-ASCII and ASCII control characters in FAT label
FAT label is interpreted according to current OEM DOS codepage which is
system dependent setting. But most DOS codepages have same characters in
printable ASCII range, so this is the only safe range of characters which
are interpreted in same way by most programs and operating systems. Also
all DOS codepages are only 8bit, so characters above U+FF cannot be stored
to FAT label.
2017-09-26 22:02:02 +01:00
Pali Rohár 5a30aff288 Set FAT label in upper case
FAT label should be stored in upper case. Also Windows systems doing it.
2017-09-26 22:01:56 +01:00
Andrius Štikonas 6b6ddbdcef Use int for maxLabelLength. 2017-09-11 16:52:20 +01:00
Andrius Štikonas 17e6c32633 Fix more implicit type conversion warnings. 2017-09-11 13:41:03 +01:00
Andrius Štikonas 0f2ab468eb Disable some characters in FAT label input. 2017-09-10 19:19:08 +01:00
Andrius Štikonas cc8a2558eb Fix one forgotten instance of fsck.msdos -> fsck.fat. 2016-12-06 01:45:22 +00:00
Andrius Štikonas 0827eda687 Do not run the same check twice.
Spotted by Kevin_Kofler.
2016-10-30 02:54:10 +00:00
Andrius Štikonas 2414b69be1 mkfs.fat exists with code 1 when it is run without any arguments. 2016-10-30 01:15:08 +00:00
Andrius Štikonas 898c9a7333 mkfs.msdos->mkfs.fat 2016-10-28 22:07:52 +01:00
Andrius Štikonas d83ec394b1 Make Filesystem::create non-const. 2016-09-05 12:10:56 +01:00
Andrius Štikonas 4de925735e Convert some for loops into for ranged based loops. 2016-08-15 17:20:50 +01:00
Andrius Štikonas 0f33fe07c9 Fix coverity issues and some other minor simplifications. 2016-08-05 13:55:56 +01:00
Andrius Štikonas ea99bcc76f Correctly report used space of FAT partitions whose dirty bit is set.
BUG: 366313
2016-08-02 21:41:09 +01:00
Andrius Štikonas 3a2b78e143 Improve semantic markup of translations. 2016-07-17 23:41:00 +01:00
Andrius Štikonas 3756ec45da Reduce maximum capacity of FAT16 file systems by 1 MiB. 2016-06-09 19:22:56 +01:00
Andrius Štikonas 1ea4f4976d Revert "Revert "Port away from QRegExp to QRegularExpression.""
This reverts commit c291af2c83.
2016-05-12 16:45:13 +01:00
Andrius Štikonas c291af2c83 Revert "Port away from QRegExp to QRegularExpression."
This reverts commit bb2de6cd56.

This was causing a crash when restoring partitions.
2016-05-11 22:31:33 +01:00
Andrius Štikonas bb2de6cd56 Port away from QRegExp to QRegularExpression. 2016-05-08 00:22:22 +01:00
Andrius Štikonas eb4e985933 Use C++11 initialization instead of << for readability. 2016-04-21 22:48:05 +01:00
Andrius Štikonas e0c23f443b Update copyright. 2016-03-02 19:00:31 +00:00
Teo Mrnjavac de27f840bf Always use nullptr instead of NULL because it is type-safe. 2015-07-22 15:48:03 +02:00
Andrius Štikonas 626f560e52 Format kpmcore code using KDE style. 2015-07-13 17:16:36 +03:00
Teo Mrnjavac 3bbce2865f Revert "Format kpmcore code using KDE style."
This reverts commit 21b569e499.
2015-07-13 16:03:36 +02:00
Andrius Štikonas 21b569e499 Format kpmcore code using KDE style. 2015-07-13 17:02:13 +03:00
Andrius Štikonas 1ef6fa8131 Move kpmcore library into its own repository. 2015-06-04 01:29:22 +01:00