Daniel Molkentin
3db3c7b876
Update QtSingleApplication and QtLockedFile
...
Fixes stale temp file issues, and is needed for blocking support.
2014-05-21 11:19:38 +02:00
Klaas Freitag
d0b9b002e4
Show the sync icon in case the status is not yet defined.
...
This fixes the problem that on the first sync, no proper status icon is
shown on a potential long update phase.
2014-05-21 11:09:01 +02:00
Olivier Goffart
bdba56f60b
Always wait on the thread before emiting finished
...
This ensure that there would be no way to have two thread running
Refactor all the location where finished is called in a single function
2014-05-20 12:32:06 +02:00
Daniel Molkentin
7ade4bb6e6
AccountSettings: Handle button states more correctly
...
Fixes #1779
2014-05-19 15:46:23 +02:00
Daniel Molkentin
86117aed0d
autostart unix impl: use mkpath instead of mkdir
...
Fixes TestUtility::testLaunchOnStartup(), if .config/ does not exist.
2014-05-19 12:42:04 +02:00
Klaas Freitag
43fe7b0d55
Detect directory case sensitivity clash on windows
2014-05-16 15:24:01 +02:00
Olivier Goffart
e1f8eb5aa5
Another way to force a sync when choosing 'Keep files'
2014-05-15 19:36:01 +02:00
Olivier Goffart
f40a054cb7
Revert "Re-sync immediatly after "Keep files" when all files were removed"
...
This causes infinite sync loops
This reverts commit 8b469d3992
.
2014-05-15 19:29:40 +02:00
Daniel Molkentin
81c768099e
Folder: Correctly reflect paused state after restart
2014-05-15 15:04:48 +02:00
Daniel Molkentin
4bcaebb322
Decrease debug noise
2014-05-15 15:04:48 +02:00
Olivier Goffart
8b469d3992
Re-sync immediatly after "Keep files" when all files were removed
...
Fixes #1710
2014-05-15 11:48:01 +02:00
Olivier Goffart
bb929db7e6
fix warning
2014-05-15 11:29:23 +02:00
Olivier Goffart
90ee274744
We need to call csync_commit in every error cases
...
Else there will still be outdated tree in the memory and the further sync
will be confused
Relates to #1710
2014-05-15 11:18:06 +02:00
Daniel Molkentin
9f6e9f8e1b
Fix crash: if the credentials cannot be cast, don't deref, assume change
2014-05-15 11:12:18 +02:00
Klaas Freitag
f89bfce068
Enable core dumping if the env variable OWNCLOUD_CORE_DUMP is defined
...
Set OWNCLOUD_CORE_DUMP to anything to get a core dump in case of
crashing.
2014-05-15 11:01:21 +02:00
Klaas Freitag
ef44a59bed
Better debugability.
2014-05-15 09:45:50 +02:00
Klaas Freitag
d96139f698
Commented verbose logging.
2014-05-15 09:45:50 +02:00
Daniel Molkentin
de970eb0a5
Fix wizard flow with shibboleth
2014-05-15 09:43:26 +02:00
Daniel Molkentin
17a2e224c4
Fix memleak
2014-05-14 12:53:12 +02:00
Daniel Molkentin
5ed4710d64
Merge pull request #1726 from owncloud/debian_bsd
...
Make Debian GNU/kFreeBSD compile
2014-05-14 12:20:17 +02:00
Klaas Freitag
5493c22584
Do not dispatch invalid progress information to avoid "unknown" messages
2014-05-14 11:52:22 +02:00
Klaas Freitag
64f4d1b387
Removed block parameter from terminateSync.
...
Do not pretend to immediately terminate the sync but let csync
finish planfully and free the mutex.
2014-05-14 11:52:22 +02:00
Daniel Molkentin
cdd8c8165b
Add missing header to fix Qt5 compilation
2014-05-14 11:22:56 +02:00
Daniel Molkentin
ba959f7cf9
CookieJar refactoring required to overcome issues in Shibboleth support
...
The shibboleth implementation no longer maintains its own QNAM.
Instead, MirallAccessManager now holds a custom QNAM implementation
which saves cookies to a file on disk.
This patch also reduces some complexity wrt the browser window,
which used to be deleted via a roundtrip to its callee, which
is not longer required.
Fixes #1764 and Enterprise bug #165
Going forward, AbstractCredentials::getQNAM() could maybe removed entirely.
2014-05-14 11:11:45 +02:00
hefee
07f57b1982
make Debian GNU/kFreeBSD compile
2014-05-13 16:51:42 +02:00
Olivier Goffart
574e030caf
Use a different key than "user" to store the shib user
...
There is a HACK from commit fa0a2764a4
Which save the http user as a user for all credidentials, but that
cannot work with shibboleth
Fixes https://github.com/owncloud/enterprise/issues/175
2014-05-13 11:54:36 +02:00
Olivier Goffart
091e9bbd52
Fix crash when _engine is not available
...
Fixes #1671 and #1675
2014-05-07 16:17:08 +02:00
Olivier Goffart
ce09e11011
Revert "Do not dereference the _engine member variable without check."
...
bubbleUpSyncResult is only called from slotSyncFinished, so if _engine
is invalid there, it is also invalid in slotSyncFinished
This reverts commit aee7515d42
.
2014-05-07 16:13:43 +02:00
Olivier Goffart
f034bcb9ae
only increment the progressbar for files when the file has been fully transfered
2014-05-07 12:35:02 +02:00
Klaas Freitag
a50c39cd0c
Maintain the original inode value for renamed files.
...
In case two renames are done on the same file/folder very quickly we
lost the information that the second operation was also a rename. That
was because we tried to get the inode value from a stat on the file once
the first rename was finished. But at that point, the file was already
gone because of the second rename.
Now the original inode is kept and written to db in case the file can
not be stat'ed.
This fixes bug #1737
2014-05-06 12:55:54 +02:00
Klaas Freitag
370dd99e47
Super useful source comment.
2014-05-06 09:30:50 +02:00
Olivier Goffart
1631cfdaf1
Fix not blacklisting error 5xx
2014-05-02 17:26:28 +02:00
Olivier Goffart
2e76fe87c2
Fix reporting the right error in a GET
...
We always reported the lack of e-tag instead of the real error
2014-05-02 17:26:28 +02:00
Markus Goetz
6c44f53645
Set network timeout to 300 sec
...
As per previously used values (see source and changelog)
2014-05-02 15:35:40 +02:00
Olivier Goffart
988c162d2f
Have only one place where we read the timeout
2014-05-02 13:04:53 +02:00
Olivier Goffart
88cb047197
Add a timeout when using the QNAM propagation
2014-04-30 18:17:49 +02:00
Klaas Freitag
7f7154ed40
Auto generate the Export header.
...
This should fix oem builds.
2014-04-30 13:55:40 +02:00
Klaas Freitag
a8c1ffc2f4
Add a header file for owncloudcmd.cpp to avoid (auto)moc problems.
2014-04-30 13:55:40 +02:00
Klaas Freitag
df8b5b1ea6
Removed unused Q_OBJECT
2014-04-30 13:55:40 +02:00
Olivier Goffart
ce50cdecf1
Add one byte per files in the computation of the progress bar
...
So it feels like the progress bar is moving when operating of file
that are empty or when deleting or renaming files
2014-04-30 13:20:20 +02:00
Olivier Goffart
77c7439329
Don't include the directory size in the overall progress
...
We don't include them in the total amout of files so it should
not be included in the progress either.
Also, for some reasons directories seems to be 16kB on windows
2014-04-30 12:57:30 +02:00
Markus Goetz
925c6485e6
Propagator: Dont show silly string for non-error
2014-04-30 11:36:57 +02:00
Olivier Goffart
d62deabf9b
Fix updating mtime
...
Fixup commit 9193286fc1
Use the right URL for the PROPPATCH and HEAD, do not let other
jobs start when we wait for the UpdateMTimeAndETagJob
Update the etag and the fileid of the real item.
2014-04-30 10:24:17 +02:00
Markus Goetz
876de8fd69
Networkjobs: Remove stray include
2014-04-29 17:55:26 +02:00
Olivier Goffart
983f9c5dde
The job restore job need to be run with QMetaObject::invoke
...
Because the job might be in a different thread.
2014-04-29 16:58:24 +02:00
Olivier Goffart
9193286fc1
Support old server which do not have the x-oc-mtime support
...
Owncloud 4.5
Or owncloud 5 with chunking
Fixes https://github.com/owncloud/core/issues/8392
2014-04-29 16:58:24 +02:00
Olivier Goffart
1b8d11182b
Add missing include
...
This was required so the compiler sees the declaration of
CredentialsFactory::create which should be exported
2014-04-29 16:04:24 +02:00
Olivier Goffart
dcc5c105eb
fix forward declaration of CredentialsFactory::create
2014-04-29 15:50:19 +02:00
Klaas Freitag
64b42333b0
Fix typo.
2014-04-29 15:36:13 +02:00
Olivier Goffart
3ee729bc4a
Add export macro to all classes that need to be exported
2014-04-29 15:31:14 +02:00
Daniel Molkentin
a268b03990
Try to not have windows stay-on-top
2014-04-29 15:31:03 +02:00
Olivier Goffart
9f0848ba15
Merge remote-tracking branch 'origin/libowncloudsync_noqtgui'
2014-04-29 12:23:15 +02:00
Olivier Goffart
f159b028b4
Add a compile option to not blacklist error code 5xx
2014-04-29 11:39:46 +02:00
Olivier Goffart
7e702778a1
Add missing line break
2014-04-29 11:27:31 +02:00
Markus Goetz
4489a56c65
Csync: Set error at correct place
2014-04-28 17:25:18 +02:00
Markus Goetz
7f752c7e93
Csync: Plug code for csync_file_locked_or_open
2014-04-28 16:57:56 +02:00
Daniel Molkentin
2d3ea59755
Limit the mac workaround to the Mac OS X platform
2014-04-28 10:13:53 +02:00
Olivier Goffart
9da261acd8
Do not read from the database when upgrading from 1.5
...
We need to make sure that the file id are updated (if the user
had upgraded from owncloud 5 to owncloud 6 while using owncloud 1.5)
2014-04-25 13:31:44 +02:00
Olivier Goffart
642c16b09b
Missing EXPORT
2014-04-24 23:57:42 +02:00
Olivier Goffart
5c92c190f0
Add EXPORT macro to owncloudsync library
...
Not all the class are exported currently, only the one that seems to be used
by the command line tools
2014-04-24 23:45:20 +02:00
hefee
9b7a3d00ee
Using QFile::decodeName instead of QLatin1String
2014-04-23 18:59:40 +02:00
Sandro Knauß
1d862b77af
merged 1.5 into master
2014-04-23 18:54:49 +02:00
Olivier Goffart
f2519e9d87
Fix function signature: pass argument by const reference
2014-04-22 19:52:09 +02:00
Markus Goetz
197d180cb9
Propagator: Add support for CSYNC_CONFLICT_FILE_USERNAME
2014-04-22 16:17:49 +02:00
Markus Goetz
4be20db670
Propagator: Add makeConflictFileName function
2014-04-22 16:07:18 +02:00
Olivier Goffart
46d6191bc2
Also list folder for which the alias starts with '.'
...
Fixes #1695
2014-04-22 14:26:08 +02:00
Olivier Goffart
ee22f377af
Start the folder watcher when new folder are added
...
Before, we would only set up a file system watcher when we read the
config at startup. But we also need to do it in the other case when
the user configure new folder to watch
2014-04-22 14:15:43 +02:00
Olivier Goffart
44a04227f1
Update dynamically the error message in the account settings
...
This let the error be shown when the conneciton is missing at startup
And also remove the red background when there is no longer an error
2014-04-22 14:08:37 +02:00
Olivier Goffart
707c6fcc5d
An abort on the reply is not usually a password error.
...
Copy the code from HTTPCredidentials
2014-04-22 12:52:13 +02:00
Olivier Goffart
edb1f61241
Fix compilation without the BUILD_ONLY_LIBRARIES mode
2014-04-22 12:44:01 +02:00
Olivier Goffart
3fac5f91c8
In case of error, report the right error instead of missing etag
...
also, missing etag is not a fatal error
2014-04-22 12:43:38 +02:00
Olivier Goffart
1338c08622
Fix compilation on linux with BUILD_LIBRARIES_ONLY
2014-04-22 11:33:38 +02:00
Olivier Goffart
0cf8091705
Merge pull request #1700 from wakeup/master
...
Fix non-closed p tag
2014-04-22 10:08:29 +02:00
Klaas Freitag
c24732f641
More debugable code.
2014-04-22 09:33:07 +02:00
Markus Goetz
77ac092975
WiP: Attempt to compile without UI
2014-04-21 19:57:15 +02:00
Volkan Gezer
78e5e4ab66
Fix non-closed p tag
2014-04-21 15:29:42 +02:00
Volkan Gezer
9b71643c1c
Space fix
2014-04-20 14:54:40 +02:00
Olivier Goffart
b08284e4cc
Fix the background check job for the connection
...
We can't use the quota job for that as it needs the credidentials and therefore
may re-enter the credidential code when we are currently trying to fetch the credentials.
The quotainfo.cpp part of this patch is basically a revert of d836b80153
2014-04-19 09:49:52 +02:00
Olivier Goffart
fa38bf7029
Make sure the fileid are saved to the database when upgrading from owncloud5 to owncloud6
...
We fetch the id from the server, but don't save them in the database.
I Could have used INSTRUCTION_UPDATED for that, but then i would need to update the
reconcile algorithm to take in account the fact that UPDATED is possible there.
Instead, use should_update_etag which means the db is going to be written again
Remove reference to old instruction _UPDATED and _DELETED which does not make sens with
the new propagator
Improve the test to test this case, and that etags are properly writen to the DB
when there is a fake conflict
2014-04-18 18:27:27 +02:00
Klaas Freitag
d143044f4a
Add missing cases to avoid "unknown action" under some circumstances.
...
Most of the translations are not used because they translate pre
propagation states.
Fixes #1674
2014-04-15 16:54:49 +02:00
Klaas Freitag
aee7515d42
Do not dereference the _engine member variable without check.
...
This can cause the crash because the _engine member is deleted in the
sync finished slot. The solution is to store the stopWatch object
before the engine is destroyed.
Fixes bug #1675
2014-04-15 16:28:18 +02:00
Klaas Freitag
82ab5fdcb9
Fix condition if network limit change is logged or not.
2014-04-15 16:28:18 +02:00
Klaas Freitag
4c6e6f6302
Add initialisations for member variables.
...
Avoids some valgrind warnings.
2014-04-15 16:28:18 +02:00
Klaas Freitag
0a2791270a
Add a reset method.
2014-04-15 16:28:18 +02:00
Klaas Freitag
c920f81562
Add braces.
2014-04-15 16:28:18 +02:00
Daniel Molkentin
d836b80153
Fix reconnect after server disconnect
...
Fixes #1679
Fixes #1568
Fixes #1659
2014-04-14 17:51:57 +02:00
Daniel Molkentin
efc4ff4d88
Fix redirects in CheckServerJob
2014-04-14 15:12:38 +02:00
Daniel Molkentin
dc043b5765
Try scheme://host/owncloud if scheme://host/ did not work
...
Fixes #1680
2014-04-14 15:10:08 +02:00
Daniel Molkentin
ef9a318cd9
AbstractNetworkJob Allow finished() to defer Job deletion
...
This allows to reuse the Job
2014-04-14 15:08:43 +02:00
Volkan Gezer
8250fb81b3
Fix typo.
2014-04-11 15:10:47 +02:00
Klaas Freitag
30a14b9f45
Install ocsync library to private lib directory, use rpath to find it.
2014-04-11 13:28:11 +02:00
Klaas Freitag
09e05392bf
Ignore all sync log files in the sync dir.
2014-04-09 22:02:28 +02:00
Daniel Molkentin
d3d202de68
Fix dataLocation on Linux/BSD
...
From the Qt 5 documentation:
Note: when porting QDesktopServices::DataLocation(obsolete)
to QStandardPaths::DataLocation, a different path will
be returned.
QDesktopServices::DataLocation was GenericDataLocation
+ "/data/organization/application", while
QStandardPaths::DataLocation is GenericDataLocation
+ "/organization/application".
We'll resort to the deprecated version, since we'll need to fix
data locations to be XDG compliant sooner than later anyway
(currently scheduled for 1.8)
2014-04-09 14:59:08 +02:00
Daniel Molkentin
87010fbe1a
SSL Button: Fix issues around printing Hash sums
...
- Use SHA 265 instead of obsolete MD5 where possible (Qt5)
- Remove <tt> formatting: that simply looked ugly
- Wrap SHA 265 hash
- Use spaces as separators
As usual, the default needs to remain ':' separation, because
it's needed to pass valid hashes to csync.
2014-04-09 14:30:51 +02:00
Klaas Freitag
7c40dc1a9a
Ignore changes on .owncloudsync.log in the linux filewatcher.
...
Also remove some verbose and unused logging.
2014-04-08 13:06:34 +02:00
Daniel Molkentin
b34b4e37aa
Add Qt Keychain also when building with Qt5
2014-04-08 10:56:07 +02:00
Daniel Molkentin
69bdccfd2f
Include correct QtKeychain headers
...
..depending on Qt version
2014-04-07 17:46:06 +02:00
Daniel Molkentin
1d70426bb7
Build with BOTH Qt4 and 5
2014-04-07 17:25:25 +02:00
Daniel Molkentin
6a2fe6be67
Build fix: QAtomicInt has no implicit integer conversion in Qt5
2014-04-07 16:49:01 +02:00
Klaas Freitag
3d67d203fe
Fix content-length calculation for sizes multiple of the chunk size.
2014-04-07 16:29:06 +02:00
Klaas Freitag
fc06945b26
use the lowercase app name for icon in the desktop file.
...
fixes #1642
2014-04-07 15:14:58 +02:00
Klaas Freitag
9cdcc925c1
Do not log useless stuff.
2014-04-07 15:10:55 +02:00
Markus Goetz
d35c0f3ade
Propagator: Fix chunking for real
...
The reset() (using seek()) didn't work.
2014-04-05 14:26:24 +02:00
Markus Goetz
0f7d448058
Propagator: Fix chunking
2014-04-04 15:41:35 +02:00
Klaas Freitag
435e7e3eec
HACK to avoid continuation: See task #1448
...
We do not know the _modtime from the server, at this point, so just set
the current one. (rather than the one locally)
2014-04-04 10:56:33 +02:00
Klaas Freitag
08dd9796d1
HACK to avoid continuation: See task #1448
...
We do not know the _modtime from the server, at this point, so just set
the current one. (rather than the one locally)
2014-04-04 10:50:40 +02:00
Olivier Goffart
462ba7d942
Don't dead lock when all the files are removed
...
SyncEngine is on the main thread, no need of the legacy BlockingConnection
2014-04-03 17:47:49 +02:00
Klaas Freitag
cf87fdff7f
Keep the updater data in the log struct for the synclog.
...
Also, shorten the timestamp and add the sync direction.
2014-04-03 16:56:50 +02:00
Markus Goetz
565bb540d6
Propagator: Add debug message regarding legacy vs QNAM
2014-04-03 16:37:40 +02:00
Olivier Goffart
eaf5681f61
Put the sync log in the actual folder
2014-04-02 16:36:32 +02:00
Olivier Goffart
03ef2aadde
Remove undeeded includes
...
And don't use 'using namespace' in headers
2014-04-02 16:23:57 +02:00
Olivier Goffart
f09076180d
don't add the list of field on the log for every sync
2014-04-02 16:21:07 +02:00
Olivier Goffart
d5d3c1a23a
Fix compilation with Qt5
...
We don't need QtWidgets, and we don't need Uility::escape
2014-04-02 16:21:06 +02:00
Markus Goetz
b18f1ad386
SyncEngine: Removed unused signal
2014-04-02 12:47:15 +02:00
Klaas Freitag
8625ec250b
Add a trust ssl certificate switch
2014-04-01 16:14:24 +02:00
Klaas Freitag
d731f4718d
Add an simple SSL error handler for owncloudcmd.
2014-04-01 16:14:24 +02:00
Olivier Goffart
607e48a68b
let configure the default count of the blacklist
2014-04-01 13:54:47 +02:00
Olivier Goffart
bfe6a50b19
Fix some error cases in the SyncEngine
...
Always cleanup properly when we bail out.
Also fix thread safety of the SyncJournalDB
2014-04-01 13:41:47 +02:00
Olivier Goffart
3acdfc0004
Make configurable the maximum amount of job in parallel
...
Bia the environement variable OWNCLOUD_MAX_PARALLEL
2014-03-28 11:20:07 +01:00
Olivier Goffart
a1fc7f0a25
Make the chunk size configurable via an environement variable
...
OWNCLOUD_CHUNK_SIZE
2014-03-28 11:11:02 +01:00
Olivier Goffart
8de9bec122
Remove progress info from csync
...
csync doesn't do no propagation no more
2014-03-28 10:50:15 +01:00
Olivier Goffart
765a18b74a
Fix compilation with Qt4
2014-03-28 10:26:42 +01:00
Olivier Goffart
350283fe06
Remove obsolete code that removed the sync journal when the sync directory is deleted
...
Since the journal is now in the same directory, we don't need this
security anymore
When the directory is removed, the sync will error out saying that the
journal cannot be loaded or created
2014-03-28 10:23:09 +01:00
Olivier Goffart
2ba62b79b4
Make the size of the log maximum 1MiB
2014-03-28 10:13:35 +01:00
Olivier Goffart
e0b6395d18
Use sane datastructure in Utility::StopWatch
...
We don't want to logging to be O(N^2)
Also avoid usage of macro when possible
2014-03-28 09:50:13 +01:00
Olivier Goffart
ba896b0550
Avoid copies of the StopWatch
2014-03-28 09:39:50 +01:00
Olivier Goffart
36a2c861c2
Only build the static library when BUILD_LIBRARIES_ONLY is defined
2014-03-28 09:34:21 +01:00
Olivier Goffart
7f975e0b2f
Avoid macro when it can easily be done with a local variable
2014-03-28 09:27:05 +01:00
Olivier Goffart
69fcbd3b0d
Fix Qt4 compilation
...
And a typo
2014-03-27 18:19:56 +01:00
Olivier Goffart
d6525a979d
Do not let user change it's login while using shibbolet
...
Fixes #915
2014-03-27 17:59:50 +01:00
Markus Goetz
54313338cd
SyncEngine: new aboutToPropagate signal
2014-03-27 17:04:31 +01:00
Markus Goetz
09e6207ce9
SyncEngine: Fix typo
2014-03-27 15:19:02 +01:00
Denis Dzyubenko
000e0bb600
Fast forwarded qtmacgoodies
2014-03-27 10:39:56 +01:00
Olivier Goffart
de2335c1db
Show the folders when in the accountsettings in the first start
2014-03-26 19:31:37 +01:00
Olivier Goffart
332c6cf726
Fix invalid signal connection
2014-03-26 19:31:37 +01:00
Klaas Freitag
086dd07d69
Log the processed items to a logfile.
2014-03-26 18:16:27 +01:00
Klaas Freitag
dd6b71bad6
Use a stopwatch to meassure the time consumed.
2014-03-26 18:16:27 +01:00
Klaas Freitag
9af2339596
Store the request duration and timestamp to final item
2014-03-26 18:16:27 +01:00
Klaas Freitag
0fcef5f604
Add data to store interesting info from the sync run (other tree)
2014-03-26 18:16:27 +01:00
Klaas Freitag
c41935d49d
Add a class to write a machine readable sync log file.
2014-03-26 18:16:27 +01:00
Klaas Freitag
7b84defd56
Add a stopwatch utility class with lap times.
...
Allows to meassure the duration of something that started at a
point of time, with some small convenience methods.
2014-03-26 18:16:27 +01:00
Klaas Freitag
505429b582
Add a duration and the repsonse timestamp to the jobs.
2014-03-26 18:16:27 +01:00
Klaas Freitag
11bbad79e2
Use QTimer as object member rather than pointer based.
...
Avoid crashes if timer is zero.
2014-03-26 18:16:27 +01:00
Klaas Freitag
6e6f647c63
Change data type for fileId to QByteArray.
2014-03-26 18:12:22 +01:00
Olivier Goffart
2ad7b0aae0
Fix crash on first run when no account are configured
2014-03-26 17:42:05 +01:00
Olivier Goffart
588633a0f2
Fix leak: don't leak the settings
2014-03-26 17:42:05 +01:00
Markus Goetz
d5659442b2
SyncEngine: Sanity bail out if DB does not exist suddenly
...
The update/reconcile worked for me, but the Propagate step had an invalid DB
path but still went on (and then messed things up)
2014-03-26 16:57:50 +01:00
Markus Goetz
c6e5f39f7f
SyncJournalDb: Verbose log on load failure
2014-03-26 16:40:00 +01:00
Olivier Goffart
38344589c4
Exxtract the exception message from reply to PUT
...
Might be usefull to debug Internal Server Error
Fixes #1366
2014-03-26 12:02:22 +01:00
Denis Dzyubenko
6c28151e0f
Fast forwarded qtmacgoodies submodule
2014-03-26 10:15:35 +01:00