Commit graph

188 commits

Author SHA1 Message Date
wangqr
f92abc863e Remove exception in destructor of agi::io::Save
Provide Close() for error handling
Correctly parse boost error code
Handle failure in TextFileWriter

Fix wangqr/Aegisub#25
2019-10-17 03:29:59 -04:00
wangqr
f1ef3d2d2c Fix PCM provider bugs 2019-09-15 19:46:43 -04:00
wangqr
3eff75d56e In tagless_find_helper only tag before start should be ignored
The search result is irrelevant to which tag we should ignore

Fix wangqr/Aegisub#17
2019-09-11 11:29:20 -04:00
wangqr
1204a3be85 Cleanup CMake 2019-09-10 01:37:48 -04:00
wangqr
c2c44f1ad2 Fix build warnings
For pimpl with anonymous namespace, see https://stackoverflow.com/questions/39684438
2019-09-07 01:31:16 -04:00
wangqr
d65643ddee Remove extra semicolon 2019-09-02 22:23:19 -04:00
wangqr
fbca222295 Add back original travis tests 2019-09-02 22:06:41 -04:00
wangqr
3225ae39f4 Fix Makefile build
A missing header (acconf.h) issue was introduced in 34575a9786
In 419386aadd, some new source files have been added but not added to the file list in Makefile
2019-09-02 13:46:50 -04:00
wangqr
d6ddea0f65 Detect EBML magic number to skip encoding detection for MKV
MKV loads slow after f733297499
2019-06-16 19:16:31 -04:00
wangqr
f733297499 Rewrite encoding detection
Now feeds all data to uchardet, when uchardet is available. The file
size limit is removed.

When uchardet is not available, we look for UTF-8 BOM.
This should make loading UTF-8-BOM files faster.
Because Aegisub always save file in UTF-8-BOM, this should also
guarentee Aegisub will load large (>100MB) file saved by itself.

See Aegisub/Aegisub#110
2019-05-18 22:13:26 -04:00
wangqr
1819fc8d8b Fix iconv ConversionFailure on long path 2019-05-16 11:04:53 -04:00
Ryan Lucia
bb2cfb1fcd Properly ignore ASS whitespace characters in character counter 2019-05-11 20:00:49 -04:00
wangqr
34575a9786 Migrate to CMake to update packages easier 2019-05-08 16:34:39 -04:00
wangqr
841a35a6fd Fix overflow bound 2018-12-08 01:20:08 -05:00
wangqr
ee7dc6af4e Fix millisecond to centisecond convertion
Fix Aegisub/Aegisub#94
2018-12-08 01:20:08 -05:00
Thomas Goyne
2cb92a5f74 Bump _WIN32_WINNT to Vista 2018-11-23 09:22:18 -08:00
Thomas Goyne
5cfa896f98 Drop Windows XP support 2018-05-25 08:27:29 +02:00
sidneys
d4461f65be fix(updated-macos-build): prefix icu method calls (icu::BreakIterator, icu::Locale, icu::UnicodeString) 2018-03-31 02:58:27 +02:00
therealfun
f6a2ac08a6 Makefiles: replace the use of subst macro with patsubst (#56)
$(subst .c,.o,...) replaces '.c' with '.o' everywhere in pathnames. For
example, renaming the "Aegisub" folder to "Aegisub.cool" will make the
build system generate "Aegisub.oool/.../.o" objects.

https://www.gnu.org/software/make/manual/make.html#Text-Functions
2018-03-05 09:28:29 -08:00
Martin Herkt
3594ade719 build: sort wildcard results for repeatable builds (#44) 2017-03-30 10:08:30 -07:00
Thomas Goyne
43f5af556d Switch back to GetVersionEx() to avoid depending on the win8 SDK just for VersionHelpers.h 2016-04-08 11:24:07 -07:00
Thomas Goyne
893b08a19c Add CFLAGS_PTHREAD/LIBS_PTHREAD to everything needing them
Closes #1903.
2016-03-05 11:23:46 -08:00
Thomas Goyne
45315476bd Switch to a maintained fork of universalchardet 2016-02-09 20:29:29 -08:00
Thomas Goyne
bebc024fa0 Fix overflow issues with truncated pcm files 2015-11-29 20:11:14 -08:00
Thomas Goyne
263ccbdc23 Fix misalined pointer read in the PCM audio provider 2015-11-29 20:11:14 -08:00
darealshinji
f0258cf2d9 Don't use -fPIC
`-fPIC` is only useful when building shared libraries.
2015-09-18 23:03:50 +02:00
Thomas Goyne
4366e59353 Update to Visual Studio 2015 2015-07-30 19:20:10 -07:00
Thomas Goyne
d5dde6cff2 Reduce error-handling bloat a bit 2015-07-28 16:22:48 -07:00
Thomas Goyne
b0f4c9f1ad Remove agi::vfr::Framerate's explicit swap implementation 2015-07-28 14:30:03 -07:00
Thomas Goyne
fefa31eb47 Improve code coverage of tests 2015-07-28 14:30:03 -07:00
Thomas Goyne
4a3b411092 Silence a warning 2015-07-28 14:30:02 -07:00
Thomas Goyne
09b2736103 Mark a bunch of things as overriding virtual functions 2015-07-28 14:30:02 -07:00
Thomas Goyne
3c55d4fde4 Fix incorrect results for non-regex skip tags searches
Closes #1865.
2015-07-27 10:29:22 -07:00
Thomas Goyne
74ac2ab1fe Extract some more find/replace logic to libaegisub 2015-07-27 10:29:22 -07:00
Thomas Goyne
c013342caa Catch more exceptions in lfs 2015-05-09 10:54:37 -07:00
Thomas Goyne
878fd4453b Fix whitespace 2015-02-15 08:19:22 -08:00
Thomas Goyne
e72ab0eda8 Remove an incorrect error message 2015-02-15 08:19:17 -08:00
Thomas Goyne
879788fe83 Eliminate some gratuitous exceptions 2015-02-15 08:19:10 -08:00
Thomas Goyne
9f196adc2e Replace boost::tokenizer with agi::Split 2015-02-08 08:11:22 -08:00
Thomas Goyne
5d8aeb8b40 Replace most remaining uses of boost::split with agi::Split 2015-02-08 08:11:14 -08:00
Thomas Goyne
01558bf10d Fix type_name compilation on OS X
Reverts 2986932f31. There are more types
of ints than sizes of ints, so using the stdint types doesn't work.
2015-02-07 14:56:50 -08:00
Thomas Goyne
427037a552 Reimplement boost::split_iterator to make it less slow
boost::split_iterator type-erases the predicate, which makes it require
a virtual call per character (!) along with a heap allocation. As it
turns out we only ever need one predicate (comparing to a single
character), so replace it with a split_iterator that just does that.
2015-02-07 14:56:27 -08:00
Thomas Goyne
7300a1bf2d Remove some redundant .get()s 2015-01-26 19:22:59 -08:00
Niels Martin Hansen
2986932f31 Fix issues with type_name on Win64 build
Both size_t and unsigned long long are aliases for
unsigned __int64 on Win64, and causes a duplicate definition.
Replacing all the integer type_name definitions with stdint.h
names should avoid this problem.
2015-01-20 21:22:14 +01:00
Niels Martin Hansen
ca555359d9 Make dummy audio provider generate non-periodic noise 2015-01-14 00:21:22 +01:00
Thomas Goyne
b6edf58651 Eliminate some object file bloat 2015-01-01 10:23:59 -08:00
Thomas Goyne
b29fcd4f89 Add some extern template declarations for stuff with vtables 2014-12-28 20:43:29 -08:00
Thomas Goyne
e485c469e2 Pull some of OptionValue to a cpp file 2014-12-28 20:21:48 -08:00
Thomas Goyne
5089499e8b Remove Excetipion's virtual destructor 2014-12-28 19:52:42 -08:00
Thomas Goyne
a6b1639320 Extract some bits that don't need to be templated from templates
Cuts compile time by about 10% and shrinks the final binary a little.
2014-12-28 16:46:38 -08:00