Commit graph

359323 commits

Author SHA1 Message Date
Michael Stahl
37198ff27b fdo#72695: avoid double-free race condition for SwXTextTable
Change-Id: Ibd27e8d61ccbe7d1cdeb72d310acea54198ecd77
2014-08-20 16:40:11 +02:00
Michael Stahl
e1b299de1d remove bogus mutex guard in SwXTextTables::GetObject()
Change-Id: I97e1eef0d364b18a2a7151558e1f7cd17bade160
2014-08-20 16:40:10 +02:00
Michael Stahl
3426685cc2 i#105557: thread-safe caching of SwXTextTable instances
Add factory function SwXTextTable::CreateXTextTable that uses
the WeakReference SwFrmFmt::m_wXObject to cache the instance in
a thread-safe way.

Change-Id: I88939e2586d104193184eea43b466f2cbeb71d6f
2014-08-20 16:40:10 +02:00
Michael Stahl
37ea2c99b9 fdo#72695: avoid double-free race condition for SwXFrame
The problem is that Modify() may be called from ~SwFmt while another
thread is waiting on SolarMutex in the ~SwXFrame or derived class
destructor, so the ref-count is 0 and the uno::Reference in Modify()
will cause a double-free.

Since ClientModify() does some re-parenting of listeners, it is at first
glance better to call Modify() in this situation (although it is quite
possible that it actually doesn't matter), so don't avoid the call in
~SwFrmFmt by adding a SwClient* member there, but put a weak reference
to itself into SwXFrame so it can check if it's still alive...

Change-Id: I492bb8a8557af5fc725fdb7f8b21013e0886f63b
2014-08-20 16:40:09 +02:00
Michael Stahl
102348fcd1 make SwXFrame derived constructors private
... so that new instances have to be created by the factory functions.

Change-Id: I643a154609b1a277d5cbc22d739ef8e357028f56
2014-08-20 16:40:09 +02:00
Michael Stahl
851af7040e i#105557: even more thread-safe caching of SwXFrame instances
Change-Id: If5cc29e75a35326a933fed70e2f39d92c9e09cde
2014-08-20 16:40:09 +02:00
Michael Stahl
3777d302fa i#105557: more thread-safe caching of SwXFrame instances
There's another over-engineered factory function to convert...

Change-Id: I4a51ea197f1a550f712f6542a4ebaf305e293f3f
2014-08-20 16:40:08 +02:00
Michael Stahl
00b5f1ef2e i#105557: thread-safe caching of SwXFrame instances
Replace SwXFrames::GetObject() with factory functions that use the
WeakReference SwFrmFmt::m_wXObject to cache the instance in a thread-safe
way.

Change-Id: If56e4d7f95cb4f2e112139f228fb832ae9bf7d76
2014-08-20 16:40:08 +02:00
Michael Stahl
bcbab38792 sw/README: document refactor-god-objects progress
Change-Id: Ic460da6cd3e70dcd0ab95f46cf3fb8ccca288abe
2014-08-20 16:40:08 +02:00
Michael Stahl
37931a7944 sw/README: add some stuff about fields
Change-Id: Ie0b76e70ebe8958166cd7c3c3f348eedf29fdbf9
2014-08-20 16:40:08 +02:00
Michael Stahl
404f16e97f sw: ww8: fix another ~SwIndexReg() assertion
If the position is the same as the body text anchor position, don't
delete the node.  Probably something should have inserted more nodes
between StartApo() and StopApo().

Change-Id: I41110a47d840e764f6d2a24e43bf6938b1282972
2014-08-20 16:40:07 +02:00
Michael Stahl
be4320f32a sw: ww8: avoid ~SwIndexReg() assertion
In SwWW8ImplReader::StopApo() the JoinNext() may delete the node that
pPaM points to.  It is probably a bad idea to use a non-correctable
SwPaM in an import filter; sadly this filter uses the core API directly,
let's use a SwUnoCrsr which should avoid the problem.

Change-Id: I120a481883b7ecbfa59cc998153fec0e6b9bafe5
2014-08-20 16:40:07 +02:00
Michael Stahl
4f211a0d0c gdb: print the SwNodeIndex properly if there are multiple blocks
Change-Id: I178d365e71ef3377b1a2cfc115bb297640161efe
2014-08-20 16:40:07 +02:00
Marcos Paulo de Souza
b3d9852309 Remove more useless includes of tools/debug.hxx
Change-Id: If289dcbff125ac0088f01b5c9752f9f3173585dc
Reviewed-on: https://gerrit.libreoffice.org/11020
Reviewed-by: David Tardon <dtardon@redhat.com>
Tested-by: David Tardon <dtardon@redhat.com>
2014-08-20 09:10:01 -05:00
rbuj
e5070e0cc2 wizards: Number parsing
Change-Id: If81db8cf10556dbb79458258a70760e3f12a5524
Reviewed-on: https://gerrit.libreoffice.org/11041
Reviewed-by: David Tardon <dtardon@redhat.com>
Tested-by: David Tardon <dtardon@redhat.com>
2014-08-20 09:09:21 -05:00
Takeshi Abe
5e531e121f fdo#75757: remove inheritance to std::vector
Change-Id: I621286f0b64ff464bc29310ba79e416abc5791d8
Reviewed-on: https://gerrit.libreoffice.org/11042
Reviewed-by: David Tardon <dtardon@redhat.com>
Tested-by: David Tardon <dtardon@redhat.com>
2014-08-20 09:07:42 -05:00
Noel Grandin
794d5ac4ac vcl: use enum for complex text layout constants
Since these constants are bitfield flags, we define some methods to make
working with them reasonably type safe.

Move the definitions to outdevstate.hxx, since we need the values there,
and that appears to be the "root most" header file.

Also dump TEXT_LAYOUT_BIDI_LTR constant, since it means the same thing
as TEXT_LAYOUT_DEFAULT (ie. 0), and leaving it in causes people to write
weird code thinking that it's a real flag.

Change-Id: Iddab86cd6c78181ceb8caa48e77e1f5a8e526343
Reviewed-on: https://gerrit.libreoffice.org/10676
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2014-08-20 09:01:26 -05:00
Caolán McNamara
71804294c7 Resolves: fdo#79227 labels are truncated
Change-Id: I9d5cd9491325aab6c844c889bf4db6baab2e75c8
2014-08-20 14:56:19 +01:00
Stephan Bergmann
893d5f9973 Clean up line splicing and indentation
Change-Id: I2b9725052aeaeebef84ec9aedba639f6dda537ff
2014-08-20 15:44:59 +02:00
David Tardon
83046bfcdd Updated core
Project: help  9a8ca9edc790d35cafbb1b7eb1b0465b806e428f
2014-08-20 08:14:12 -05:00
Caolán McNamara
f78e647a07 drop unused helpid
Change-Id: Iba89e712dda4795a045c7cc346ed1c100e1cbfbc
2014-08-20 14:06:53 +01:00
Caolán McNamara
9acd707d73 fix crashing on exit in static SvxBrushItem dtor
site of second ctor

Change-Id: Ic319bd36f207a0f1939482a7b4c729b519bb5ce1
2014-08-20 14:06:33 +01:00
Caolán McNamara
df4bd415c0 fix crashing on exit in static SvxBrushItem dtor
site of first ctor

Change-Id: I3316e91bc54439b74df30fdf02ff264a39489c29
2014-08-20 14:06:33 +01:00
Caolán McNamara
a93ef22ada Updated core
Project: help  5ca651f48f04a382b5e915ab9ebb330a28274822
2014-08-20 08:06:10 -05:00
Szymon Kłos
96d7f6171a DLG_FILTER_SELECT and DLG_SIMPLE_NAME_CLASH conversion to .ui
Change-Id: I2a87330d73e2735a764296185f165a29f05b517c
Reviewed-on: https://gerrit.libreoffice.org/11040
Reviewed-by: David Tardon <dtardon@redhat.com>
Tested-by: David Tardon <dtardon@redhat.com>
2014-08-20 08:05:13 -05:00
Caolán McNamara
a6c5f2ba6b rework RID_TP_GENERAL conversion to make widgets visible, etc.
Change-Id: I93e30198e27631ad4a6865fd202af16094c26a41
2014-08-20 14:00:59 +01:00
Caolán McNamara
4b339818bb add a VclViewport
like GtkViewport so that the scrolled region will be clipped,
which also has the side-effect of stopping glade clobbering
the non view-port scrolled .ui files on editing

Change-Id: Ic64174b3a35b77f068e0085cdc7721aeb33f1d82
2014-08-20 14:00:58 +01:00
Palenik Mihály
eba5e5b6b6 Convert RID_TP_GENERAL tabpage to .ui
Change-Id: I32300c3d06a8c30d8e75f343cd2af8acef7296ae
Reviewed-on: https://gerrit.libreoffice.org/10989
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
2014-08-20 08:00:21 -05:00
rbuj
d8a7f72bab Use COMMONS_LOGGING_VERSION vble
Change-Id: I0c76ec7e3f9b95166b4005dd1ad5349b3889c3e4
Reviewed-on: https://gerrit.libreoffice.org/10993
Reviewed-by: Thomas Arnhold <thomas@arnhold.org>
Tested-by: Thomas Arnhold <thomas@arnhold.org>
2014-08-20 07:29:55 -05:00
Stephan Bergmann
1b0baa5799 loplugin:literaltoboolconversion
Change-Id: I6fe25eb5619e5e0273e6e2010c948daa547fe46c
2014-08-20 14:16:07 +02:00
Stephan Bergmann
f340f04546 Pick a more suitable type for nLength
Change-Id: I6e38b82f08884c4e187e5b3ca2c95a0d4ca8d541
2014-08-20 14:04:58 +02:00
Eike Rathke
fdb7429bf5 update input bar with new value
If setting the number format isn't called we need to explicitly update
the input bar.

Change-Id: I60c4808ce86eb659d3faf92d368c5118ee9673b2
2014-08-20 13:43:33 +02:00
Eike Rathke
32e8c47df8 refine current date/time hotkey handling
Nearing the "do what I mean" principle..

* key date on time cell  =>  current date + time of cell  =>  date+time formatted cell
  * unless time cell was empty or 00:00 time  =>  current date  =>  date formatted cell
* key date on date+time cell  =>  current date + 00:00 time  =>  date+time formatted cell
  * unless date was current date  =>  current date  =>  date formatted cell
* key date on other cell  =>  current date  =>  date formatted cell
* key time on date cell  =>  date of cell + current time  =>  date+time formatted cell
  * unless date cell was empty  =>  current time  =>  time formatted cell
* key time on date+time cell  =>  current time  =>  time formatted cell
  * unless cell was empty  =>  current date+time  =>  date+time formatted cell
* key time on other cell  =>  current time  =>  time formatted cell

Change-Id: I5025e0d0ea9ac83d1b9e0b130262df6db4693a56
2014-08-20 13:43:31 +02:00
weigao
b7c7877257 add screen text to auto fly
Change-Id: I6a4549bf47f5126510c3ddb93733b2d56a4159e2
2014-08-20 13:01:53 +02:00
weigao
8434a2b6aa add auto fly code
Change-Id: Id137892b855b4a70625335ede8015dfe6dce1e7e
2014-08-20 13:01:53 +02:00
Noel Grandin
0ce1267ae2 remove more unnecessary constructor declarations
Change-Id: Ie5a243006b112c2e6daf12992f3dba8baf12748d
2014-08-20 12:12:43 +02:00
Noel Grandin
609f7b8503 remove do-nothing code
Change-Id: I101cc3be44f029f7353e8d40823c0d6b2bd761b3
2014-08-20 12:12:27 +02:00
Noel Grandin
c0415d5f1e java: remove unnecessary constructor declarations
in the absence of any other constructors, the compiler will automatically
generate a public no-arg constructor

Change-Id: I70eca507cd8e16e33580b3398d41d70690bc2909
2014-08-20 12:12:15 +02:00
Noel Grandin
6884ef6317 java: don't catch and then just rethrow an exception
without doing anything else useful

Change-Id: I5803d84d46e0a70e1759f2202e2c2273087f8723
2014-08-20 11:47:47 +02:00
Noel Grandin
8c9fdc4a96 java: remove modifiers implied by the context
found by PMD

Change-Id: I04cbf986ddbcffff987784f381b8a9f52f1b3f31
2014-08-20 11:45:28 +02:00
Noel Grandin
34352e7f1b fix exception not caught
Change-Id: Idf1942d76f3c13e207f2e54494557ee01013c833
2014-08-20 11:45:28 +02:00
Markus Mohrhard
4fe377ad6d disable the test until I understand the problem
Change-Id: I9a24ff49823a9521d412e1e761c4c1b6ece6b601
2014-08-20 11:27:48 +02:00
Caolán McNamara
9cad46b364 move comment into assert
Change-Id: I230fdf40dc2df552b8cfbdee33e8d3bd25fb81de
2014-08-20 10:20:30 +01:00
Caolán McNamara
7543a4165b fix indent to get this working again
Change-Id: If48dcf4d04d3888975687aa85557e2cee317f2dd
2014-08-20 10:18:42 +01:00
Caolán McNamara
17ccc09ec2 fix crash on loading ooo83574-1.doc
Change-Id: Ia959dde8bac2d663cf1a5bec0358ee89dcaf42ed
2014-08-20 10:04:32 +01:00
Caolán McNamara
30541352a1 fix string out-of-bounds assert on rhbz496762-1.pdf
Change-Id: I224e3c9befd1a9ab3ba0cc2676cd6b4ba51214c8
2014-08-20 09:49:46 +01:00
Caolán McNamara
d01ee7e2cc fix string out-of-bounds assert on gnome627759-1.ods
i.e. on soffice --headless --convert-to pdf gnome627759-1.ods

Change-Id: I01289d5afcc79b7180cc12f8ee345ac760b6a637
2014-08-20 09:39:40 +01:00
Noel Grandin
3f210b0e75 java: remove unnecessary return statements
found by PMD

Change-Id: I3d150421948d17eaed34fac2b1a212da34288d1a
2014-08-20 10:35:54 +02:00
Noel Grandin
a753a458e5 java: avoid if..else when returning boolean values
Change-Id: Iab52762a9abfe8735223372b09638ce9d8d44318
2014-08-20 10:35:53 +02:00
Noel Grandin
60f152caee java: avoid unnecessary comparisons in boolean expressions
i.e. stuff like "x == true"

Change-Id: Ib82a4a30e736df392405332fa197b588482cffcf
2014-08-20 10:35:53 +02:00