| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
We need to use double precision for the angle computations, as they are
crucial to build correct winged edge structures.
Reviewed-by: Trond
|
|
|
|
| |
Reviewed-by: Eskil
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
Add a new (internal) flag QGraphicsItem::ItemStopsClickFocusPropagation.
Fixed some potential index-out-of-bounds issues in QImage.
Fixed autotest failure in fillRect_stretchToDeviceMode
Adding a known issue for VC2010 64 bit
Added a note to desupport VC2010 64-bit
Normalize integers when calling glVertexAttribPointer()
Add an implementation of comp_func_solid_SourceOver_neon() with Neon.
Fix the casts of qdrawhelper_sse2
Add a SSE2 implementation of comp_func_solid_SourceOver()
Add a SSE2 version of comp_func_SourceOver()
Fixed missing copy of raster pixmap data after change fb76a872e20bd.
Fixed QPixmap::toImage() bug introduced in fb76a872e20bd.
Optimized sub-rect copying / painting of QPixmaps.
Fixed crash in the fast blend functions for raster
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This flag allows you to create a non-focusable item that can be clicked
on without changing the focus. This is also possible to achieve by
using focus scopes / panels, however the implementation is then way
more complex. Thew new flag is tailored for simple uses cases where
you simply want to stop the propagation and nothing more.
Auto test included.
Task-number: QT-3499
Reviewed-by: yoann
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
Fixed some potential index-out-of-bounds issues in QImage.
Fixed autotest failure in fillRect_stretchToDeviceMode
Adding a known issue for VC2010 64 bit
Added a note to desupport VC2010 64-bit
Normalize integers when calling glVertexAttribPointer()
Add an implementation of comp_func_solid_SourceOver_neon() with Neon.
Fix the casts of qdrawhelper_sse2
Add a SSE2 implementation of comp_func_solid_SourceOver()
Add a SSE2 version of comp_func_SourceOver()
Fixed missing copy of raster pixmap data after change fb76a872e20bd.
Fixed QPixmap::toImage() bug introduced in fb76a872e20bd.
Optimized sub-rect copying / painting of QPixmaps.
Fixed crash in the fast blend functions for raster
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Added color table bounds checks when converting a color indexed
image to a different pixel format. Fixed an off-by-one error in
the color table bounds check in QImage::setPixel(). Fixed an
autotest that was setting pixel values out of bounds.
Reviewed-by: Gunnar
|
| | |
| | |
| | |
| | |
| | |
| | | |
Swapping the length and color arguments to qt_memfill is a bad idea.
Reviewed-by: Benjamin Poulain
|
| | |\
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
Normalize integers when calling glVertexAttribPointer()
Add an implementation of comp_func_solid_SourceOver_neon() with Neon.
Fix the casts of qdrawhelper_sse2
Add a SSE2 implementation of comp_func_solid_SourceOver()
Add a SSE2 version of comp_func_SourceOver()
Fixed missing copy of raster pixmap data after change fb76a872e20bd.
Fixed QPixmap::toImage() bug introduced in fb76a872e20bd.
Optimized sub-rect copying / painting of QPixmaps.
Fixed crash in the fast blend functions for raster
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The function comp_func_solid_SourceOver_neon() is use extensively by
WebKit via the calls to fillRect() of QPainter().
Implementing the function with Neon provides some performance
improvement (around 175% of the previous speed).
Reviewed-by: Samuel Rødal
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
I did erroneous cast by mistake, the code should ensure the pointer
are on 32 bits integers.
Reviewed-by: Andreas Kling
Reviewed-by: Samuel Rødal
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This function is used quite a lot by WebKit animations, the SSE2
implementation is twice as fast in those uses cases.
Reviewed-by: Andreas Kling
Reviewed-by: Samuel Rødal
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Implement a version of comp_func_SourceOver() with SSE2. This gives a
performance boost of 11% on some WebKit animations.
Two new macros were added to simplify the implementation of the
different blending primitives:
BLEND_SOURCE_OVER_ARGB32_SSE2() and
BLEND_SOURCE_OVER_ARGB32_WITH_CONST_ALPHA_SSE2()
Reviewed-by: Samuel Rødal
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
It's expected that copy actually does a deep copy of the image data.
Because QRasterPixmapData::fromImage() will just use the source image as
is in this case we need to do a deep copy of the QImage.
Reviewed-by: Trond
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The alpha channel we get from XGetImage might not be saturated for
opaque pixmaps.
Reviewed-by: Trond
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Prevented downloading of the whole XImage by introducing new
QPixmapData::toImage() overload taking a sub-rect. Also avoid an
additional copy by simply taking ownership of the XImage data when
the XImage format matches the QImage format.
Reviewed-by: Trond
|
| | | |\
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
Fixed crash in the fast blend functions for raster
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The blend functions don't work when the scaling factor goes beyond
65536, so abort early. Strictly speaking the scale factor comes
from targetWidth / sourceWidth, so this catches a bit more cases.
Reviewed-by: Kim
Task: http://bugreports.qt.nokia.com/browse/QTBUG-9437
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We use the TrackMouseEvent() to keep track of enter and leave messages.
Upon receiving a WM_MOUSELEAVE, the effect of that function call is over,
we need to call it again if we need more messages. This was not done when
we close a popup because of mouse click outside.
Task-number: QTBUG-11582
Reviewed-by: Bradley T. Hughes
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
While setting up the stacking order for child windows, their hidden state
was never taken into consideration.
Task-number: QTBUG-11239
Reviewed-by: Richard Moe Gustavsen
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
For a key event triggered by the cursor keys, QKeyEvent::text() returns
char with value 0x14 or similar. This patch (Cocoa only)will remove
text from all key events for the unicode range 0xF700-0xF747. This is
part of the corporate unicode range used by apple for keyboard function keys.
[http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/CORPCHAR.TXT]
Task-number: QTBUG-11225
Reviewed-by: Bradley T. Hughes
|
|/ / /
| | |
| | |
| | | |
Reviewed-by: Benjamin Poulain <benjamin.poulain@nokia.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
For a newly created folder in the current path, we were returning NO for
the "shouldShowFilename" callback. This patch moves the check for
directories to the begining.
Task-number: QTBUG-11532
Reviewed-by: Carlos Duclos
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Implemented the straight string-to-glyph conversion in the core text
font engine, that bypasses the shaping. This is used by the fast text
code path in QtWebKit.
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| | |
On other platforms then when a drag is finished then it cleans up by
calling setMimeData(0) and deleteLater() on the drag object, this didn't
happen before on the Mac which meant it did not delete the QDrag objects
until the parent of them was deleted thus taking up memory.
Task-number: QTBUG-11613
Reviewed-by: Prasanth
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The implementation for the QT_2746 task had a wrong destruction order
of font database elements. The 'QSymbianTypeFaceExtras' in Symbian^4
hold a CFont which is retrieved from the Symbian ScreenDevice. They
have to be released by the same ScreenDevice. The error was that
the release was attempted after the connection to the ScreenDevice
was closed.
This fix causes an earlier destruction of all 'QSymbianTypeFaceExtras'
and the removal of their their CFonts in qt_cleanup. While the
connection to the ScreenDevice is still alive.
Task-number: QT_2746
|
|\ \
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (28 commits)
Make sure ValueRecord's DeviceTables is cleaned up on failure
qdoc3: Build fix for regression in e2f0e728e
Fix incorrect usage of _HB_OPEN_Free_Device() in CaretValue cleanup
Fix null HB_Device** dereference on exit in Harfbuzz GPOS code
Doc: Relicensed the documentation under the GNU FDL version 1.3.
doc: Added more DITA output to the XML generator
Designer: Prevent QButtonGroup from being added for Q3ButtonGroup.
Fix for a leak in the mac style.
Doc: Fixing bugs to style and script
doc: Added more DITA output to the XML generator
Make sure that <br/> is seen as a valid tag in Qt::mightBeRichText()
Fix compiler warnings in QtGui (text,painting).
Allow Unix to generate unique UUIDs if /dev/urandom exists.
Allow GNU Free Documentation license header.
Add missing license header.
Updated Harfbuzz from git+ssh://git.freedesktop.org/git/harfbuzz to ab9a897b688e991a8405cf938dea9d6a2f1ac072
Fix example compile and runtime warnings, webkit examples not built.
qgl_cl_p.h is no longer existent
Updated Harfbuzz from git+ssh://git.freedesktop.org/git/harfbuzz to 5699175f55acbdfa4ac95ab6c727ebd4a201f3a2
Doc: Fixed documentation errors.
...
|
| |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: (26 commits)
Fix incorrect usage of _HB_OPEN_Free_Device() in CaretValue cleanup
Fix null HB_Device** dereference on exit in Harfbuzz GPOS code
Doc: Relicensed the documentation under the GNU FDL version 1.3.
doc: Added more DITA output to the XML generator
Designer: Prevent QButtonGroup from being added for Q3ButtonGroup.
Fix for a leak in the mac style.
Doc: Fixing bugs to style and script
doc: Added more DITA output to the XML generator
Make sure that <br/> is seen as a valid tag in Qt::mightBeRichText()
Fix compiler warnings in QtGui (text,painting).
Allow Unix to generate unique UUIDs if /dev/urandom exists.
Allow GNU Free Documentation license header.
Add missing license header.
Updated Harfbuzz from git+ssh://git.freedesktop.org/git/harfbuzz to ab9a897b688e991a8405cf938dea9d6a2f1ac072
Fix example compile and runtime warnings, webkit examples not built.
qgl_cl_p.h is no longer existent
Updated Harfbuzz from git+ssh://git.freedesktop.org/git/harfbuzz to 5699175f55acbdfa4ac95ab6c727ebd4a201f3a2
Doc: Fixed documentation errors.
doc: Added more DITA output to the XML generator
doc: Fixed type of Package::name
...
|
| | |\ |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
Task-number: QTBUG-11550
Reviewed-by: Morten Sørvig
|
| | | |\ |
|
| | | | |
| | | | |
| | | | |
| | | | | |
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
|
| | | | |\
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1:
Allow GNU Free Documentation license header.
Add missing license header.
Updated Harfbuzz from git+ssh://git.freedesktop.org/git/harfbuzz to ab9a897b688e991a8405cf938dea9d6a2f1ac072
Fix example compile and runtime warnings, webkit examples not built.
qgl_cl_p.h is no longer existent
Updated Harfbuzz from git+ssh://git.freedesktop.org/git/harfbuzz to 5699175f55acbdfa4ac95ab6c727ebd4a201f3a2
Doc: Fixed documentation errors.
doc: Added more DITA output to the XML generator
doc: Fixed type of Package::name
Updated Harfbuzz from git+ssh://git.freedesktop.org/git/harfbuzz to 508b02a252b524d34f3ed970eef3bdb6350a2b77
Fix for emitting changed signal in QClipboard
Fixed tst_QNetworkDiskCache creating badly named directories.
Specialize peek() for QBuffer
Documentation changes to QTextLayout.
Doc: Updated example license to three clause BSD license.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The W3C online markup validation test verifies that <br/> is indeed
valid XHTML and <br /> is also valid so this ensures that this case is
accounted for.
The existing test was expanded to accout for each of these cases.
Task-number: QTBUG-1786
Reviewed-by: Eskil Abrahamsen Blomfeldt
|
| | | |_|/
| | |/| |
| | | | |
| | | | |
| | | | | |
Reviewed-by: Trust Me
Requested-by: Legal
|
| | |\ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
When the app that owns the selection quits and there is no clipboard manager
running we emit the changed signal whenever the timestamp of the event we got
is greater than our timestamp.
Task-number: QTBUG-8157
Reviewed-by: Thiago Macieira
Author: Luboš Luňák
|
| | |\ \ \ \
| | | | | | |
| | | | | | |
| | | | | | | |
integration
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
- Improves quality of English in some cases
- Removes some redundant redundancy
Generally makes it more pleasant to read, IMHO.
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
Reviewed-by: Trust Me
|
|\ \ \ \ \ \ \
| |/ / / / / /
|/| | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
Compiler warnings (unused variables).
Compiler warnings.
Fix crash with large ClientCutMessage
Fix crash at exit and out of bounds write
fix issue wrt posted events on Windows CE
|
| | |_|_|_|/
| |/| | | |
| | | | | |
| | | | | | |
Reviewed-by: jbarron
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public:
Update 4.7-beta2 def files
Added Samsung and Sony-Ericsson manufacturer IDs to sqlite3.sis
Fix for TLS problem which causes apps to crash in the S60 port
Fixed bearer plugin deployment in libinfixed builds
Always add QtNetwork include path when linking with QtWebkit in Symbian
Assigning 0xA UID3s to the new standalone qml demos
|
| | |_|_|/ /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
QS60Data member data was being reset to zero after initialisation by
a memclr call in QS60Data. The correct way to initialise the member
data is with the member initialisation list, so this is now done,
and all member data is now correctly initialised.
Reviewed-by: Jason Barron
|
|\ \ \ \ \ \
| |_|/ / / /
|/| | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
into 4.7-integration
* 'qt-4.7-from-4.6' of scm.dev.nokia.troll.no:qt/qt-integration:
Updated Harfbuzz from git+ssh://git.freedesktop.org/git/harfbuzz to 5699175f55acbdfa4ac95ab6c727ebd4a201f3a2
Fixed device context leak in QGLWidget on Windows.
Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit/qtwebkit-4.6 ( a13977ce2aba31808a046cddc082a84dc316d78b )
Updated Harfbuzz from git+ssh://git.freedesktop.org/git/harfbuzz to 508b02a252b524d34f3ed970eef3bdb6350a2b77
Re-enable data structure packing in Harfbuzz for RVCT
Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit/qtwebkit-4.6 ( 85a48bdb52a81a9d18477a347fba5f6c930af416 )
Fixed memory lean in QImageVideoBuffer and QMemoryVideoBuffer.
QLocalSocket/Win: handle ERROR_MORE_DATA after read operation
Fix possible crash in QTextLayout for glyphless items
Attempt to stabilize tst_qtimeline::value
Attempt to stabilize tst_lconvert
Replace custom WAIT_FOR_CONDITION with semi-standard QTRY_COMPARE
Attempt to stabilize tst_qwidget::taskQTBUG_4055_sendSyntheticEnterLeave
Attempt to stabilize tst_qwidget::syntheticEnterLeave
Attempt to stabilize tst_qwidgetaction::visibilityUpdate
Attempt to stabilize tst_lupdate::good
Updated WebKit from /home/shausman/src/webkit/trunk to qtwebkit/qtwebkit-4.6 ( aa3f786bdba4dc153620ae7f98e4b0e41770d1d1 )
Audio (osx); In pull mode emit readyRead() for each period received.
AudioInput example; disconnect from the built-in device when changing mode.
|
| |\ \ \ \ \
| | |/ / / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
src/3rdparty/* is left untouched and not merged from 4.6. The corresponding
changes in Harfbuzz and WebKit are already in the 4.6 staging areas.
Conflicts:
src/3rdparty/webkit/VERSION
src/3rdparty/webkit/WebCore/ChangeLog
src/3rdparty/webkit/WebKit/qt/ChangeLog
src/3rdparty/webkit/WebKit/qt/tests/qgraphicswebview/tst_qgraphicswebview.cpp
src/3rdparty/webkit/WebKit/qt/tests/qwebview/tst_qwebview.cpp
src/3rdparty/webkit/WebKit/qt/tests/qwebview/tst_qwebview.qrc
tests/auto/qtextlayout/tst_qtextlayout.cpp
tests/auto/qwidgetaction/tst_qwidgetaction.cpp
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Commit 392123ef5432643d1047d1e1dd71512ec39d382d introduced the
leak.
Task-number: QTBUG-11432
Reviewed-by: Trond
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Change e1915815bc5ef86b3844608bba46769da5173363 moved part of the
right bearing check out of the "non-whitespace-or-object" block of the
layout, which could potentially cause crashes for layouts that contained
items that were line separators or tabs etc. because we would access
the logical clusters array based on the position of e.g. the tab even
though it didn't have an entry. This could potentially give us an
arbitrary index which might cause an out of bounds when accessing the
glyphs array.
Task-number: QTBUG-11427
Reviewed-by: Simon Hausmann
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Currently, with the graphics system raster, converting from images
to QPixmap often needs to allocate a new image to convert the right
format.
For example, for an image in ARGB32 of 10 mbytes, we need to allocate
a second image of 10 mbytes in ARGB32_PM to convert the source image
in the right format for pixmap.
This can create a hight peak of memory, and is a bit slower
than it should.
This patch introduce in-place conversion of images when they are
loaded with QPixmap::loadFromData().
The images are loaded in their default format by QImageReader,
and are then converted in-place, trying to reduce memory
allocations.
Reviewed-by: Samuel Rødal
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-2:
Don't do opaque detection when copying a sub-rect of a QPixmap.
Optimized QPixmap::fromImage for raster pixmaps.
Doc: Small change to QAbstractItemDelegate::editorEvent()
Typo in qcleanlooksstyle.cpp
Doc: Specified QAbstractEventDispatcher::filterEvent()'s argument types.
Speed up calls to QPainter::setCompositionMode when the mode is unchanged
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
If the pixmap is non-opaque in the first place most likely a reasonably
sized sub-rect is also non-opaque, so this check is a waste in 90 % of
the cases.
Reviewed-by: Gunnar Sletta
|