Commit Graph

257 Commits

Author SHA1 Message Date
TheAssassin
77c52883f1 Remove deprecated debug code 2019-03-20 17:25:13 +01:00
TheAssassin
157861d236 Make symlinking work for older versions of ln, too 2019-03-20 17:23:14 +01:00
TheAssassin
1f498772b4 Properly handle nonexisting files 2019-02-23 18:01:47 +01:00
TheAssassin
f9fc51a832 Improve search for patchelf
CC https://github.com/linuxdeploy/linuxdeploy-plugin-qt/issues/24.
2019-02-20 13:13:34 +01:00
TheAssassin
a3e06e0024 Statically link desktopfile library 2019-02-07 00:46:59 +01:00
TheAssassin
956a253428 Return final deployment path
deployFile allows for specifying a directory as destination, and copies
files into there, simulating the behavior of tools like cp. To do that,
it creates the directory, then appends the filename of the input file
to it and uses that as destination for the "copy file" call.

It's pretty handy for some applications to get the full path of the
new file returned by this method directly (doesn't have to implement
this concatenation more than once).
2019-02-06 23:23:48 +01:00
TheAssassin
ce6597fb9d Better handle debug-symbols-only ELF files 2019-01-29 01:00:36 +01:00
TheAssassin
8df605cb19 Use shared pointer to manage PImpl object 2019-01-29 00:02:49 +01:00
TheAssassin
7c8ab1c773 Fix desktop file deployment 2018-12-22 23:26:28 +01:00
TheAssassin
5374e7ece9 Switch to extracted desktop file library 2018-12-22 23:09:04 +01:00
TheAssassin
78f33a7190 Move linuxdeploy-specific helper out of desktop file class 2018-12-22 23:02:15 +01:00
TheAssassin
cddefc3806 Validate some constraints on localized keys 2018-12-06 12:09:18 +01:00
TheAssassin
1f5315926d Increase readability 2018-12-06 12:08:51 +01:00
TheAssassin
a12f3ac0fe Improve error message 2018-12-06 11:56:21 +01:00
TheAssassin
640b756a7f Temporarily allow localization brackets in key names
Must be revised when introducing proper localization support.
2018-12-06 11:49:14 +01:00
TheAssassin
ef90b09c79 Fix remaining issues with usage of assert 2018-11-23 20:52:54 +01:00
TheAssassin
ce097235f2 Note for self: -O1+ strips out expressions surrounded by assert() 2018-11-23 18:05:56 +01:00
TheAssassin
b974f44ffd Debug desktop file unit tests, mk.1
They're only broken on non-debug builds, so it's quite likely the
optimizations break the code.
2018-11-21 00:03:20 +01:00
TheAssassin
ccfd05b5e0 Improve DesktopFile's comparison operators 2018-11-19 22:12:14 +01:00
TheAssassin
6cf9bc55a7 Fix comparison editor 2018-11-19 22:06:29 +01:00
TheAssassin
1e3e074f35 Properly copy desktop file reader 2018-11-19 22:06:08 +01:00
TheAssassin
7b16864dbe Add missing return statement 2018-11-19 21:51:26 +01:00
TheAssassin
0b5ab2fc36 Fix return type of setter 2018-11-19 21:51:26 +01:00
TheAssassin
132931772c Fix directory check 2018-11-19 20:52:45 +01:00
TheAssassin
6f7a2fd54a Reduce verbosity of debug logging related to plugin detection 2018-11-19 20:50:09 +01:00
TheAssassin
c4258759b4 Make sure directories aren't falsely recognized as plugins 2018-11-19 20:48:04 +01:00
TheAssassin
92a1370b30 Be able to use EXPECT_EQ with DesktopFile objects
GoogleTest internally uses operator==(first, second) instead of
first.operator==(second). By implementing the operators outside the
classes, GoogleTest can be made happy.
2018-11-15 23:36:04 +01:00
TheAssassin
6a951558ce Use assert to check for impossible scenarios 2018-11-15 21:23:43 +01:00
TheAssassin
1c4e4a3888 Remove redundant setters/getters 2018-11-15 20:53:16 +01:00
TheAssassin
e4bf795211 No need for a string conversion operator
Doesn't make sense here anyway.
2018-11-15 20:44:43 +01:00
TheAssassin
beb2ee15be Don't use exceptions to detect abnormal behavior
https://isocpp.org/wiki/faq/exceptions#why-not-exceptions
2018-11-15 18:48:58 +01:00
TheAssassin
520ac6de9b Reduce amount of implicit behavior in desktop file parser 2018-11-15 18:03:46 +01:00
TheAssassin
f7975f1b80 Use return types with guaranteed sizes
This will ensure the conversions work equally on both 32-bit platforms
(int == long on 32-bit Linux systems, on 64 bit long > int).
2018-11-15 17:19:42 +01:00
TheAssassin
4af76a92c5 Fix duplicate key detection 2018-11-15 13:41:53 +01:00
TheAssassin
b6f5f371b6 Avoid copying data more often than necessary c 2018-11-15 13:40:22 +01:00
TheAssassin
4ffa1a66ae Improve code style 2018-11-15 13:22:41 +01:00
TheAssassin
9707b81931 Fix basic format header checks 2018-11-15 13:14:31 +01:00
TheAssassin
b43b04f693 Check for valid and invalid keys (spec/basic format) 2018-11-15 01:29:14 +01:00
TheAssassin
80adfa8872 Recognize broken section headings, mk. 4 2018-11-14 11:14:24 +01:00
TheAssassin
ded20c162d Recognize broken section headings, mk. 3 2018-11-14 10:59:17 +01:00
TheAssassin
bf152a509b Recognize broken section headings, mk. 2 2018-11-14 10:46:48 +01:00
TheAssassin
dc8f446ca4 Recognize broken section headings, mk. 1 2018-11-14 10:41:47 +01:00
TheAssassin
fbc1d78122 Use custom exceptions for error handling 2018-11-14 10:31:41 +01:00
TheAssassin
b97c8b45f5 Fix linking issue 2018-11-10 02:59:31 +01:00
TheAssassin
d6e6cac6e0 Move libraries into directories following package path 2018-11-10 01:43:36 +01:00
TheAssassin
830dc50136 Avoid recompiling code if excludelist hasn't changed 2018-11-10 01:39:55 +01:00
TheAssassin
8b8255b158 Clean up redundant includes 2018-11-09 22:04:59 +01:00
TheAssassin
574a883733 Don't require desktop file's path to exist 2018-11-09 21:28:40 +01:00
TheAssassin
74fb390e2f Make sure to include boost::lexical_cast 2018-11-09 18:53:35 +01:00
TheAssassin
b540240ba5 Improve efficiency 2018-11-09 18:31:19 +01:00