Commit Graph

23493 Commits

Author SHA1 Message Date
Thiago Macieira
9269dcc8ed Fix compilation of QContiguousCache::operator=
freeData() takes a Data*, not a QContiguousCacheData*.

Task-number: QTBUG-45783
Change-Id: I96d7ac38dac24b418138ffff13d7fdf09b1d6b07
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
2015-05-20 17:23:33 +00:00
Topi Reinio
9a1283f8d3 Doc: Qt Network: List the classes on SSL Classes page
Change-Id: I32693ac3012142c04671f8278e06165396ca3242
Task-number: QTBUG-46145
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
Reviewed-by: Martin Smith <martin.smith@digia.com>
2015-05-20 11:24:52 +00:00
Richard Moe Gustavsen
d204dd1d5e doc: add QStandardPaths documentation for iOS
Task-number: QTBUG-36171
Change-Id: I15c5ac4f5c4944218e5f30c11530160f65699be9
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
Reviewed-by: Samuel Gaist <samuel.gaist@edeltech.ch>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-05-20 07:45:33 +00:00
Paul Olav Tvete
e2102752ba Workaround for Samsung keyboard bug
Return null string instead of empty string when the selection is
empty. It looks like Samsung just tests for selection == null when
doing backspace.

Task-number: QTBUG-45785
Change-Id: Id26ce707130777fcd0ab1a4cff08367bb2810f2f
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2015-05-20 07:42:56 +00:00
Maurice Kalinowski
b6634023fa WinRT: Disable exceptions when turned off
On desktop windows we define _HAS_EXCEPTIONS=0 to also forward this
option. Hence harmonize this with WinRT builds as well.

As a side-effect qtdeclarative now compiles without warnings on WinRT.

Change-Id: I8e343f172160991ffb2ede01303802f321de82b5
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-05-19 11:46:04 +00:00
Topi Reinio
f1fdac97ab qdoc: Improve logic for automatic example tag generation
QDoc generates tags for examples based on the example title and the
name of the module. This change makes the following improvements:

    - Edit regular expression to match strings like 'OpenGL' and
      'Qt3D' as a single tag.
    - Strip off enclosing parentheses.
    - Filter out common words ('and', 'the')
    - When cleaning/modifying generated tags, keep them in a QSet
      to eliminate duplicates.

Change-Id: I288104df12bf23a224068d40bce1f980148a412a
Reviewed-by: Martin Smith <martin.smith@digia.com>
2015-05-19 11:19:05 +00:00
Maurice Kalinowski
e994f39a84 WinRT: Fix warnings for Windows Phone
Change-Id: I712facd3054eb0ee54b7d4fcd754845ddcea0ef0
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-05-19 11:18:18 +00:00
Maurice Kalinowski
528b7b1435 Fix warning on WinRT arm
Change-Id: Ibc6a34553bb42319a6937e06ef54cf92847da53c
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-05-19 10:56:30 +00:00
Erik Verbruggen
67d255f183 QStateMachine: empty the whole internal queue before external queue
If the internal queue contained multiple events, but the first one did
not select any transitions, the external event queue would be checked
before the remaining events in the internal queue.

Change-Id: I1a7f49afdefaaf2b4330bf13b079b61344385ea0
Task-number: QTBUG-46059
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2015-05-19 08:03:46 +00:00
Marc Mutz
009b11c300 QStateMachine: fix RestorableId exception specification
We're interested in whether qHash(QByteArray) throws, not declval<QByteArray>,
of course.

Change-Id: If3ba6e90aba69d0d4d12ac289e817f0d9705a601
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-05-19 05:16:24 +00:00
Laszlo Agocs
412eb090c9 Fix GLES3 functions on iOS
Task-number: QTBUG-45933
Change-Id: I784e34c1cfee5ea69955c221f0448c1d04e0b6d7
Reviewed-by: jian liang <jianliang79@gmail.com>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-05-18 18:13:46 +00:00
Kai Koehne
661f604fbc Let MSVC treat warnings as errors
Treat warnings printed by MSVC 2012, 2013 as
errors in the modules that declare themselves
warning_clean (for developer builds).

Change-Id: I55fb3bde460e13cfdbd6f59634e3b5335b2dd715
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-05-18 13:45:33 +00:00
Oliver Wolff
f65c04b37e WinRT/Winphone: Fix warnings in qtbase
Change-Id: I41725bcfeee0124b259e96f1e3a261e30f14350a
Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@theqtcompany.com>
2015-05-18 08:59:55 +00:00
Mitch Curtis
31e055cee9 Fix typo and formatting in QWidget font documentation.
Change-Id: I6dea7f1aa2827dbc4c4068184690c80a36ef2be6
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
2015-05-18 08:13:25 +00:00
Nico Vertriest
c056e529c8 Doc: added doc to undocumented functions
Task-number: QTBUG-36985
Change-Id: Ia98654f88cf5da77245b3fcd903b860d12862fc2
Reviewed-by: Martin Smith <martin.smith@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-05-18 08:01:54 +00:00
Nico Vertriest
a4848142b4 Doc: added doc for non-documented functions
Task-number: QTBUG-36985
Change-Id: I85f58c2877d83b98bf3427cbb0f567575803524f
Reviewed-by: Venugopal Shivashankar <venugopal.shivashankar@digia.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-05-18 08:01:37 +00:00
Olivier Goffart
35a125971c Fix QtPrivate::IsQEnumHelper<void>
Change-Id: I1633ef128212a6b99b66129f13e0b4d5ea46644d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2015-05-17 09:13:18 +00:00
Joerg Bornemann
298a60d958 WinRT: fix namespaced build
Change-Id: I0505523a5524995e374dc8f005f101d0cea8b01e
Reviewed-by: Oliver Wolff <oliver.wolff@theqtcompany.com>
2015-05-16 19:41:13 +00:00
Giuseppe D'Angelo
a2c4e68141 QStyle debug helpers: refactor dead code
... or compilers complain about the second, unreachable return.

Change-Id: Ic89361859fcf5cf33a57de0c803526702fa831b8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-05-16 10:19:20 +00:00
Giuseppe D'Angelo
6779ec383d QMenuBar: honor the left widget size hint
expandedTo() returns the expanded size, so we must assign the
return value (otherwise it's a no op). We were accidentally
discarding it.

Task-number: QTBUG-36010
Change-Id: Ic70c12648382a6b2ef7d70809bf25caa4cbe2f3a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-05-16 10:19:17 +00:00
Friedemann Kleint
9d85490ea2 Fix exclusion for legacy Open GL examples.
Add dynamic GL and remove warning about ANGLE since that
package no longer exists.

Task-number: QTBUG-46103
Change-Id: Icf93d1105434395a3c9ad61bb8c921fcedfc7137
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-05-15 13:39:56 +00:00
Richard Moe Gustavsen
d1528919de xcode generator: don't change output_dir when opening a pbx file directly
ProjectBuilderMakefileGenerator::openOutput should only change back
Option::output_dir when creating a pbx file inside an Xcode project.

Since the pbx file will be placed inside a different directory than
output_dir when creating an Xcode project, MakefileGenerator::openOutput()
will redirect output_dir to be inside the Xcode project as well. Since
we don't want this redirection, we change output_dir back to what it
was once the call returns. But we should only do this when creating
the whole Xcode project, since only then we create a pbx file that
is different from output_dir in the first place.

A bug with this is seen when making qt_makeqmake.mak (which is a
helper makefile inside the Xcode project). That file will only
regenerate the pbx file (and not the whole Xcode project), which
means that we don't enter the fileName.isEmpty() section, which
means that output_dir should stay as it is.

Task-number: QTBUG-45826
Change-Id: I03d5c3dec395ff4768f9272fd1981c6fd35efb1e
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-05-15 12:09:58 +00:00
Giuseppe D'Angelo
45f60d2da2 QFileSystemModel: remove useless check
The NULL check is on the line before, no point of repeating it again.

Change-Id: Id6fa9ffc4dcc00819882f2d3157e9dbdb0e1db78
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-05-15 12:01:44 +00:00
Timur Pocheptsov
1485c2f3fa tst_QDialog::snapToDefaultButton - tune the test for OS X
QCursor::setPos with Cocoa integration is calling CGEventPost. Some time is required
before the cursor position is really set, so we can not immediately call QCOMPARE.

Change-Id: I83a4c13f06ec151a4b9ab18c83de1eb5247ea9cc
Task-number: QTBUG-45553
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
Reviewed-by: Caroline Chao <caroline.chao@theqtcompany.com>
2015-05-15 09:39:41 +00:00
Caroline Chao
1842322b2b Tests: Remove EXPECT_FAIL in tst_QWidget::widgetAt()
The test is marked as XPASS in CI. This change follow 201bf9e673.

Change-Id: I0938b1417f792aa88fc1b40c08e7cd810e7d22f7
Task-number: QTBUG-22326
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-05-15 09:33:40 +00:00
Alexander Volkov
7d3f353a5b xcb: Fix FP1616 to double conversion
We should divide the fractional part of the FP1616 value by 0x10000
instead of 0xFFFF, otherwise 1.FFFF will be converted to 2.0.
And right-shifting the integer part by 16 is equal to dividing it
by 0x10000. So just divide the whole FP1616 value by 0x10000.

Change-Id: Ia89a274b81be9cf502e1f311f696a610a7f37d7f
Task-number: QTBUG-45378
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2015-05-14 16:33:48 +00:00
Volker Krause
7d1ec1ae9e Reorder member variables to avoid padding.
Saves 8 byte in each case on 64bit systems, no change on 32bit systems.

Change-Id: I2a2e8786fc7914ee9ae369ba05bedfc9e5e0ca5c
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-05-14 12:06:41 +00:00
Morten Johan Sørvig
a4cba90e19 Set correct target.path for legacy GL examples
Fix Library not loaded/image not found error on application
startup.

With @rpath enabled (commit 6e18f57a) qmake now requires
a correct target.path in order to emit correct -rpath @loader_path
linker directives.

Change-Id: Ia32b038ad2d64819477be5cd9d1ed36768e2251b
Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
2015-05-14 07:57:11 +00:00
Allan Sandfeld Jensen
e905526090 Better match thin font styles
A style name 'Extra Thin' or 'Thin Italic' should be parsed as Thin
font weight.

Change-Id: I8acebed7330c23231b3742d887081d8b3d0aeb19
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2015-05-14 00:28:06 +00:00
Kati Kankaanpaa
86601fc575 Fix division by zero crash when restoring screen settings
The restoredScreenNumber was used before it's existence was checked,
which caused 'division by zero' if the screen has been removed after
storing the screen number.

The check if restoredScreenNumber exists was moved to happen before
restoredScreenNumber is used for the first time.

Change-Id: Iada0e8c5cbb6d8ca88df171dbee045be249f50cd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
2015-05-13 20:51:03 +00:00
Sérgio Martins
6ef5ca2e2f QSize, QSizeF: Add Q_REQUIRED_RESULT
...to signatures matching the pattern:
T T::<verb in past tense>() const;

Change-Id: I75d724a3eef5cb94559e31d86914c6e0655b7f13
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2015-05-13 16:03:09 +00:00
Richard Moe Gustavsen
31dfdb49b4 iOS: remove 'truncation from double to float' compiler warning
Change-Id: I0b4b1f062180cfe09ceb275484c39afeaaa90cac
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-05-13 13:00:50 +00:00
Friedemann Kleint
c2e0c126d8 Introduce a version number to QPlatformInputContextFactoryInterface.
Append a version number to QPlatformInputContextFactoryInterface_iid
as is done for QPlatformIntegrationFactoryInterface. Start with 5.1 since
c91c05b056 changes the API in 5.4.
Use macro in plugins.

Task-number: QTBUG-46009
Change-Id: I1d1a89bde50d263354f33a6917efb1c084211842
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2015-05-13 12:41:30 +00:00
Friedemann Kleint
2142f09c3d Introduce a version number to QPlatformPrinterSupportFactoryInterface.
Append a version number to QPlatformPrinterSupportFactoryInterface_iid
as is done for QPlatformIntegrationFactoryInterface. Start with 5.1 since
a6bcdf1516 changes the API in 5.5.
Use macro in plugins.

Task-number: QTBUG-46009
Change-Id: Ib9d2a02d20b9c4c6ad6c1045a907d69d80e3def4
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2015-05-13 12:41:24 +00:00
Friedemann Kleint
45ccabdd49 Increase version number of QPlatformIntegrationFactoryInterface.
Increase version 5.2->5.3 in macro
QPlatformIntegrationFactoryInterface_iid and use that in the plugins.

Task-number: QTBUG-46009
Change-Id: I491ab0ac169ede5c103b40e1bcbcbf511922a911
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2015-05-13 12:41:15 +00:00
Friedemann Kleint
4201d85cde QPA plugins: Use _iid macros instead of strings in Q_PLUGIN_METADATA.
This makes it easier to change the version numbers by changing
the macros in QtGui.

Task-number: QTBUG-46009
Change-Id: I94c9591ec6f7c9173a698df9e1fe8fd6a904caf4
Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
2015-05-13 12:41:09 +00:00
Gabriel de Dietrich
629f5a46d5 moc: Generate qt_static_metacall for creatable-only gadgets
Prior to this, moc would not generate the function unless the
gadget class had a property or a non-constructor invokable.

Change-Id: Ic020ea5f8f59702f5e9e194a46e26850e53e5cfe
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-05-13 12:08:57 +00:00
Gabriel de Dietrich
d6efc6b543 moc: Fix type for gadget's CreateInstance metacall
An error similar to the one below would be emitted
by the compiler on the moc generated file:

error: assigning to 'QObject *' from incompatible type 'Gadget *'
       if (_a[0]) *reinterpret_cast<QObject**>(_a[0]) = _r; } break;

Change-Id: I75ae7bd6c46d20db2d47a80eaa08aae302d7d6c8
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
2015-05-13 12:08:54 +00:00
Venugopal Shivashankar
a4d66348d6 Doc: Added the Qt Multimedia backends wiki link
The wiki will be linked to from the Qt Multimedia
index page.

Change-Id: I2b60c203f759494cdf12021659847817007639f1
Task-number: QTBUG-30381
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
Reviewed-by: Yoann Lopes <yoann.lopes@theqtcompany.com>
Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
2015-05-13 11:55:07 +00:00
Morten Johan Sørvig
7ffcf328c7 Remove QNSView from superview in ~QCocoaWindow()
A QNSView without a corresponding live QCocoaWindow
object is not in a valid state. Previously we would
call removeFromSuperview for child QWindows to avoid
having Cocoa send messages to the now invalid QNSView.

Do this for QWindows embedded in native Cocoa
hierarchies as well.

Change-Id: I49c6daef8ed061b3f40138fe9b4ce6be190f2fd0
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
2015-05-13 11:42:53 +00:00
Laszlo Agocs
406934a632 Purge default locations from commonly used device makespecs
Including /usr/include and lib can cause cryptic failures if there is
already a Qt installed to /usr.

Having standard locations listed should not be necessary at all.

Change-Id: I08a15a064cc1aec126733f7e1962a2fa2ec38fcb
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Andy Nichols <andy.nichols@theqtcompany.com>
2015-05-13 11:23:25 +00:00
Caroline Chao
6c20a01cb9 QSysInfo: Expand Linux distribution detection
Expand Linux distribution detection to /etc/redhat-release and
/etc/debian_version to follow what /usr/bin/lsb_release script does.
If /usr/bin/lsb_release fails to extract the distribution information
from /etc/lsb-release, it then checks /etc/redhat-release and, as a last
fallback, /etc/debian_version.

Some Red Hat distributions have a /etc/lsb-release file that
does not provide the values we are looking for (DISTRIB_ID,
DISTRIB_RELEASE and DISTRIB_DESCRIPTION).

If both productType or productVersion are empty after reading
/etc/lsb-release, readEtcLsbRelease() will return false, allowing
further parsing of /etc/redhat-release. This scenario mimics what
the /usr/bin/lsb_release script does if /etc/lsb-release does not
contains enough information.

The productType and productVersion returned by QSysInfo after reading
/etc/redhat-release match the distributor id and release information
returned by the /usr/bin/lsb_release script.

For Debian Linux distributions where /etc/os-release, /etc/lsb-release
and /etc/redhat-release are not available nor usable, the
/usr/bin/lsb_release script also checks for the /etc/debian_version
file.

In this case, we also enable parsing of /etc/debian_version to retrieve a
fallback productVersion, the productType being set to Debian.

Change-Id: Ia20d513d78be8a8ee8c0410d0aaa052fde81a41d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2015-05-13 11:21:19 +00:00
Caroline Chao
78a1090821 Tests: Remove tst_QHostInfo::abortHostLookupInDifferentThread() test
This test has been initially blacklisted. However it is racy by design
and cannot be fixed. Removing it.

Change-Id: I6c386a12e54d8a382f17c4fc033428f56eb03f02
Task-number: QTBUG-23837
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
2015-05-13 11:21:14 +00:00
Timur Pocheptsov
21e6c7ae47 Cocoa integration - implement Qt::WindowModal file dialogs
Previously, for Qt::WindowModal dialogs  we were creating modal sheet with beginSheetModalForWindow:
and later (from exec) calling -runModal, essentially making a window modal dialog into (now) application
modal sheet, which is not right- it's centered relative to desktop and the jump from window modal sheet's
position (centered relative to a window) to application modal was quite visible.
Now, instead of [panel runModal] (== [NSApp runModalForWindow:panel])
we call [NSApp runModalForWindow:theRequiredWindow].

Change-Id: I793dc72c7d1fe96497bb35754f4d0eac9a5e00e5
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-05-13 11:18:21 +00:00
Ulf Hermann
2ca1253b13 Cocoa: Upgrade default surface format to include an alpha channel
The default surface format on OS X is changed to RGBA since this
is most performant. You can request a different surface format to
change this. You can not request the default format without alpha
channel, though.

Change-Id: I4f44d0abe01515c98ba699c76a0dd5e37b873766
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
2015-05-13 09:04:33 +00:00
Morten Johan Sørvig
cf5e557073 Remove init() function declaration.
Fix doc error. This function is not used in Qt 5
and there is no definition for it.

Change-Id: Id7e4fe1ada54005f65a559ae1ab393d011c37480
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
2015-05-13 09:02:57 +00:00
Alex Blasche
fd9a51bf56 Build qtconnectivity for iOS.
Starting with Qt 5.5 qtconnectivity on iOS is supported

Change-Id: I30430ce351b7e2fc8031c5719bed5354ed234cc7
Task-number: QTBUG-45988
Reviewed-by: Timur Pocheptsov <Timur.Pocheptsov@digia.com>
2015-05-13 06:36:44 +00:00
BogDan Vatra
c8db55970f Consider "assets" scheme as a local file on Android
Task-number: QTBUG-46010
Change-Id: Icb6c5c2529b77e3967f6d23217e63e7773a5d706
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
2015-05-13 04:30:25 +00:00
Adam Strzelecki
6e18f57a9c Build Qt for OS X and iOS with relative rpath.
Defaulting to absolute_library_soname on configure -rpath is no longer
necessary as now we support @rpath install name ids on OS X and iOS.

This also sets QMAKE_SONAME_PREFIX to @rpath for Qt modules when built
with rpath configuration.

This makes Qt libraries relocatable on OS X. Qt SDK is not yet
relocatable though, because plugin locations (including cocoa plugin)
are still resolved using absolute path (see QTBUG-14150). Also, there
are several absolute paths hardcoded in qmake mkspecs pri files.

Task-number: QTBUG-31814
Change-Id: I36b9384cd69ac609608acbe2b3d5e0512317e0d6
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2015-05-13 04:09:47 +00:00
Kai Koehne
af6c52522b Fix MSVC 64 bit compiler warnings in 3rdparty code
Make casts from size_t to int explicit to avoid warnings like

warning C4267: '=' : conversion from 'size_t' to 'int', possible loss of data

Change-Id: Ib69c25519dadf8732b0c08412cc97887df00a2d4
Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
2015-05-13 01:09:16 +00:00