platform/upstream/opencv.git
8 years agoMerge pull request #6548 from fnorf:master
Vadim Pisarevsky [Wed, 25 May 2016 13:16:07 +0000 (13:16 +0000)]
Merge pull request #6548 from fnorf:master

8 years agoMerge pull request #6551 from mshabunin:fix-old-cmake
Vadim Pisarevsky [Wed, 25 May 2016 13:13:50 +0000 (13:13 +0000)]
Merge pull request #6551 from mshabunin:fix-old-cmake

8 years agoMerge pull request #6573 from dharezlak:patch-1
Maksim Shabunin [Tue, 24 May 2016 15:28:27 +0000 (15:28 +0000)]
Merge pull request #6573 from dharezlak:patch-1

8 years agoMerge pull request #6018 from sturkmen72:patch-2
Maksim Shabunin [Mon, 23 May 2016 11:57:25 +0000 (11:57 +0000)]
Merge pull request #6018 from sturkmen72:patch-2

8 years agoImproved Java wrapper generation
dharezlak [Mon, 23 May 2016 09:13:18 +0000 (11:13 +0200)]
Improved Java wrapper generation

While generating Java JNI wrappers package names with an underscore (`_`) character where not properly escaped according to https://docs.oracle.com/javase/8/docs/technotes/guides/jni/spec/design.html#resolving_native_method_names (see also: https://github.com/Itseez/opencv_contrib/issues/652).

This fix replaces all the occurrences of `_` with `_1` resulting in proper JNI method names.

8 years agoMerge pull request #6564 from jlguardi:ml_load_empty_ptr
Maksim Shabunin [Mon, 23 May 2016 08:41:05 +0000 (08:41 +0000)]
Merge pull request #6564 from jlguardi:ml_load_empty_ptr

8 years agoMerge pull request #6565 from jlguardi:ann_64f_bug
Maksim Shabunin [Mon, 23 May 2016 08:39:25 +0000 (08:39 +0000)]
Merge pull request #6565 from jlguardi:ann_64f_bug

8 years agoMerge pull request #6570 from sturkmen72:patch-14
Maksim Shabunin [Mon, 23 May 2016 08:36:16 +0000 (08:36 +0000)]
Merge pull request #6570 from sturkmen72:patch-14

8 years agoUpdate pca.cpp
Suleyman TURKMEN [Tue, 26 Jan 2016 21:56:25 +0000 (23:56 +0200)]
Update pca.cpp

8 years agoUpdate imgproc.hpp
Suleyman TURKMEN [Fri, 20 May 2016 21:29:14 +0000 (00:29 +0300)]
Update imgproc.hpp

update documentation of calcBackProject() calcHist() compareHist()

8 years agoMerge pull request #6554 from CSBVision:patch-1
Alexander Alekhin [Fri, 20 May 2016 19:42:15 +0000 (19:42 +0000)]
Merge pull request #6554 from CSBVision:patch-1

8 years agoMerge pull request #6561 from tomoaki0705:fixMulSpectrumAarch64
Alexander Alekhin [Fri, 20 May 2016 19:39:09 +0000 (19:39 +0000)]
Merge pull request #6561 from tomoaki0705:fixMulSpectrumAarch64

8 years agoMerge pull request #6559 from OzgrCn:cuda-ORB-useProvidedKeypoints
Alexander Alekhin [Fri, 20 May 2016 19:38:31 +0000 (19:38 +0000)]
Merge pull request #6559 from OzgrCn:cuda-ORB-useProvidedKeypoints

8 years agoFixed #6563: Incorrect management for invalid files/filestorage/filenode in ml module
Jose Luis Guardiola [Fri, 20 May 2016 11:18:02 +0000 (13:18 +0200)]
Fixed #6563: Incorrect management for invalid files/filestorage/filenode in ml module

8 years agoFixed #6562: Incorrect CV_64F management in ANN
Jose Luis Guardiola [Fri, 20 May 2016 11:16:59 +0000 (13:16 +0200)]
Fixed #6562: Incorrect CV_64F management in ANN

8 years agoFix issue #6473
Özgür Can [Thu, 19 May 2016 16:59:41 +0000 (19:59 +0300)]
Fix issue #6473

Enable "useProvidedKeypoints" flag on cuda::ORB's detectAndCompute function in order to able to describe provided keypoints.

* additional author : Ender Tunç <endertunc@yahoo.com>

resolves #6473

 * Enable "useProvidedKeypoints" flag on cuda::ORB's detectAndCompute function in order to able to describe provided keypoints.

   Update for using 'const' reference to avoid array copy on each iteration.

resolves #6473

Update for 'const' reference to avoid array copy on each iteration.

8 years agoMerge pull request #6498 from berak:python_size_t
Maksim Shabunin [Fri, 20 May 2016 09:45:52 +0000 (09:45 +0000)]
Merge pull request #6498 from berak:python_size_t

8 years agofix Core_MulSpectrum test on 64bit ARM + release mode
Tomoaki Teshima [Fri, 20 May 2016 09:17:22 +0000 (18:17 +0900)]
fix Core_MulSpectrum test on 64bit ARM + release mode
  * fix issue #6536
  * increase threshold in particular tests due to the difference of fmsub and fsub

8 years agoneural_network.cpp added
CSBVision [Thu, 19 May 2016 13:40:42 +0000 (15:40 +0200)]
neural_network.cpp added

8 years agoRestored cmake 2.8.7 support
Maksim Shabunin [Wed, 18 May 2016 10:20:21 +0000 (13:20 +0300)]
Restored cmake 2.8.7 support

8 years agoMerge pull request #6446 from kevin-coder:bugfix_6445
Maksim Shabunin [Wed, 18 May 2016 09:40:26 +0000 (09:40 +0000)]
Merge pull request #6446 from kevin-coder:bugfix_6445

8 years agofixed "tot_error" to "mean_error" & nicer whitespace
Hannes [Tue, 17 May 2016 18:00:28 +0000 (20:00 +0200)]
fixed "tot_error" to "mean_error" & nicer whitespace

8 years agofixed "corners2" to "corners" & nicer whitespace
Hannes [Tue, 17 May 2016 17:36:32 +0000 (19:36 +0200)]
fixed "corners2" to "corners" & nicer whitespace

8 years agoMerge pull request #6543 from tomoaki0705:cudaThresholdMultiChannels
Alexander Alekhin [Mon, 16 May 2016 13:18:01 +0000 (13:18 +0000)]
Merge pull request #6543 from tomoaki0705:cudaThresholdMultiChannels

8 years agoMerge pull request #6541 from mshabunin:disable-pch-for-gcc6
Maksim Shabunin [Mon, 16 May 2016 13:12:23 +0000 (13:12 +0000)]
Merge pull request #6541 from mshabunin:disable-pch-for-gcc6

8 years agoaccept multiple channels image for threshold on cuda
Tomoaki Teshima [Sun, 15 May 2016 21:45:35 +0000 (06:45 +0900)]
accept multiple channels image for threshold on cuda
  * modify test, too

8 years agoDisabled PCH support for gcc >= 6.0.0
Maksim Shabunin [Fri, 13 May 2016 10:28:09 +0000 (13:28 +0300)]
Disabled PCH support for gcc >= 6.0.0

Command line generation routine uses "-isystem" to include headers outside of "<opencv>/modules" folder, but GCC 6 does not work when passed "-isystem /usr/include" option.

8 years agoMerge pull request #6460 from m039:fix/add_extra_modules_path_to_build_sdk
Maksim Shabunin [Fri, 13 May 2016 09:01:46 +0000 (09:01 +0000)]
Merge pull request #6460 from m039:fix/add_extra_modules_path_to_build_sdk

8 years agoMerge pull request #6522 from tomoaki0705:fixVSqrtAarch64
Maksim Shabunin [Fri, 13 May 2016 09:00:12 +0000 (09:00 +0000)]
Merge pull request #6522 from tomoaki0705:fixVSqrtAarch64

8 years agoAdded --extra_modules_path to build_sdk.py
Dmitry Mozgin [Fri, 22 Apr 2016 22:09:07 +0000 (01:09 +0300)]
Added --extra_modules_path to build_sdk.py

8 years agofix hal_intrin test on 64bit ARM
Tomoaki Teshima [Thu, 12 May 2016 09:30:09 +0000 (18:30 +0900)]
fix hal_intrin test on 64bit ARM
  * fix issue 6521
  * use correct comparison

8 years agoMerge pull request #6483 from StevenEWright:patch-1
Alexander Alekhin [Wed, 11 May 2016 10:41:09 +0000 (10:41 +0000)]
Merge pull request #6483 from StevenEWright:patch-1

8 years agoMerge pull request #6354 from StevenPuttemans:add_model_visualisation_tool
Alexander Alekhin [Wed, 11 May 2016 08:38:10 +0000 (08:38 +0000)]
Merge pull request #6354 from StevenPuttemans:add_model_visualisation_tool

8 years agoadd a cascade classifier model visualisation tool for master branch
StevenPuttemans [Wed, 11 May 2016 06:56:42 +0000 (08:56 +0200)]
add a cascade classifier model visualisation tool for master branch

8 years agoMerge pull request #6510 from jet47:cuda-8.0-build-fix
Alexander Smorkalov [Fri, 6 May 2016 10:07:28 +0000 (10:07 +0000)]
Merge pull request #6510 from jet47:cuda-8.0-build-fix

8 years agoGraphCut deprecated in CUDA 7.5 and removed in 8.0
Vladislav Vinogradov [Fri, 6 May 2016 08:37:32 +0000 (11:37 +0300)]
GraphCut deprecated in CUDA 7.5 and removed in 8.0

8 years agoMerge pull request #6489 from serval2412:master
Alexander Alekhin [Tue, 3 May 2016 13:43:39 +0000 (13:43 +0000)]
Merge pull request #6489 from serval2412:master

8 years agopython: support for size_t args (default value)
berak [Tue, 3 May 2016 07:50:08 +0000 (09:50 +0200)]
python: support for size_t args (default value)

8 years agocppcheck: fix some reports
Julien Nabet [Fri, 29 Apr 2016 13:41:39 +0000 (15:41 +0200)]
cppcheck: fix some reports

All of these: (performance) Prefer prefix ++/-- operators for non-primitive types.
[modules/calib3d/src/fundam.cpp:1049] -> [modules/calib3d/src/fundam.cpp:1049]: (style) Same expression on both sides of '&&'.

8 years agoFixes minor typos.
Steven E Wright [Thu, 28 Apr 2016 01:02:49 +0000 (18:02 -0700)]
Fixes minor typos.

8 years agoMerge pull request #6448 from alalek:merge-2.4
Alexander Alekhin [Mon, 25 Apr 2016 16:56:51 +0000 (16:56 +0000)]
Merge pull request #6448 from alalek:merge-2.4

8 years agoMerge pull request #6459 from eliao:Fix6457
Vadim Pisarevsky [Mon, 25 Apr 2016 13:07:51 +0000 (13:07 +0000)]
Merge pull request #6459 from eliao:Fix6457

8 years agoMerge pull request #6467 from ohnozzy:Doc-for-ocl-Kernel-Run
Vadim Pisarevsky [Mon, 25 Apr 2016 13:07:34 +0000 (13:07 +0000)]
Merge pull request #6467 from ohnozzy:Doc-for-ocl-Kernel-Run

8 years agoMerge pull request #6422 from iclemens:master
Vadim Pisarevsky [Mon, 25 Apr 2016 13:06:42 +0000 (13:06 +0000)]
Merge pull request #6422 from iclemens:master

8 years agoMerge pull request #6454 from paroj:fisheye_py
Vadim Pisarevsky [Mon, 25 Apr 2016 12:54:44 +0000 (12:54 +0000)]
Merge pull request #6454 from paroj:fisheye_py

8 years agoMerge pull request #6455 from belgraviton:bugfix_5953
Vadim Pisarevsky [Mon, 25 Apr 2016 12:50:45 +0000 (12:50 +0000)]
Merge pull request #6455 from belgraviton:bugfix_5953

8 years agoMerge pull request #6458 from eliao:Fix6456
Vadim Pisarevsky [Mon, 25 Apr 2016 12:49:16 +0000 (12:49 +0000)]
Merge pull request #6458 from eliao:Fix6456

8 years agoMerge pull request #6463 from ohnozzy:ocl-linearpolar-and-logpolar
Vadim Pisarevsky [Mon, 25 Apr 2016 12:42:40 +0000 (12:42 +0000)]
Merge pull request #6463 from ohnozzy:ocl-linearpolar-and-logpolar

8 years agoMerge pull request #6364 from sovrasov:interactive_calibration_app
Vadim Pisarevsky [Mon, 25 Apr 2016 12:39:56 +0000 (12:39 +0000)]
Merge pull request #6364 from sovrasov:interactive_calibration_app

8 years agoMerge pull request #6020 from mshabunin:hal_dxt
Vadim Pisarevsky [Mon, 25 Apr 2016 11:37:18 +0000 (11:37 +0000)]
Merge pull request #6020 from mshabunin:hal_dxt

8 years agofisheye: allow using transposed image and object point arrays
Pavel Rojtberg [Fri, 22 Apr 2016 14:45:28 +0000 (16:45 +0200)]
fisheye: allow using transposed image and object point arrays

8 years agofisheye: create rvecs, tvecs before writing
Pavel Rojtberg [Fri, 22 Apr 2016 09:56:58 +0000 (11:56 +0200)]
fisheye: create rvecs, tvecs before writing

8 years agoAdd interactive calibration app
Vladislav Sovrasov [Fri, 8 Apr 2016 13:30:56 +0000 (16:30 +0300)]
Add interactive calibration app

8 years agoAdd Comment
ohnozzy [Mon, 25 Apr 2016 03:11:50 +0000 (11:11 +0800)]
Add Comment

Add documentation for Kernel::run

8 years agoAdd OpenCL support to linearPolar & logPolar
ohnozzy [Sat, 23 Apr 2016 14:55:09 +0000 (22:55 +0800)]
Add OpenCL  support to linearPolar & logPolar

Add OpenCL  support to linearPolar & logPolar.
The OpenCL code use float instead of double, so that it does not require
cl_khr_fp64 extension, with slight precision lost.

Add explicit conversion

Add explicit conversion from double to float to eliminate warning during
compilation.

8 years agoFix 6457
Eric Liao [Fri, 22 Apr 2016 21:49:43 +0000 (14:49 -0700)]
Fix 6457

Allow configuration of the square size in stereo_calib.

8 years agoChange hardcoded relative path for instrinsics file to current path, matching the...
Eric Liao [Fri, 22 Apr 2016 21:14:25 +0000 (14:14 -0700)]
Change hardcoded relative path for instrinsics file to current path, matching the extrinsics file.

https://github.com/Itseez/opencv/issues/6456

8 years agofixing CLAHE crash with pixels value > 12 bit
Vadzim Piatrou [Fri, 22 Apr 2016 15:55:22 +0000 (18:55 +0300)]
fixing CLAHE crash with pixels value > 12 bit

8 years agoMerge branch '2.4' into master
Alexander Alekhin [Thu, 21 Apr 2016 17:10:51 +0000 (20:10 +0300)]
Merge branch '2.4' into master

Commits:
67fe57a add fixed video
db0ae2c Restore 2.4 source branch for bug fix 6317.
97ac59c Fix a memory leak indirectly caused by cvDestroyWindow
eb40afa Add a workaround for FFmpeg's color conversion accessing past the end of the buffer
421fcf9 Rearrange CvVideoWriter_FFMPEG::writeFrame for better readability
912592d Remove "INSTALL_NAME_DIR lib" target property
bb1c2d7 fix bug on border at pyrUp

8 years agoFix bug 6445
Zhenqing, Hu [Thu, 21 Apr 2016 06:39:55 +0000 (14:39 +0800)]
Fix bug 6445
Root cause: when calling imread to read the pgm file, when returning with success reading file, the destructor will free the resource which used by memcpy, but in the code, the resource calculation was not correct, therefore, it will cause memory corruption during resource free.

8 years agoMerge pull request #6441 from asmorkalov:version++
Alexander Alekhin [Wed, 20 Apr 2016 14:21:19 +0000 (14:21 +0000)]
Merge pull request #6441 from asmorkalov:version++

8 years agoMerge branch '2.4.12.x-prep' into 2.4
Alexander Alekhin [Wed, 20 Apr 2016 13:26:12 +0000 (16:26 +0300)]
Merge branch '2.4.12.x-prep' into 2.4

8 years agoMerge pull request #6401 from StevenPuttemans:add_model_visualisation_tool_2.4
Alexander Alekhin [Wed, 20 Apr 2016 13:24:25 +0000 (13:24 +0000)]
Merge pull request #6401 from StevenPuttemans:add_model_visualisation_tool_2.4

8 years agoOpenCV version++.
Alexander Smorkalov [Wed, 20 Apr 2016 13:03:47 +0000 (16:03 +0300)]
OpenCV version++.

8 years agoMerge pull request #6420 from ioxp:foreachDoc
Maksim Shabunin [Wed, 20 Apr 2016 11:55:03 +0000 (11:55 +0000)]
Merge pull request #6420 from ioxp:foreachDoc

8 years agoMerge pull request #6433 from schenker:master
Alexander Alekhin [Tue, 19 Apr 2016 16:06:35 +0000 (16:06 +0000)]
Merge pull request #6433 from schenker:master

8 years agoMerge pull request #6431 from StevenPuttemans:add_fixed_video_2.4
Alexander Alekhin [Tue, 19 Apr 2016 14:19:41 +0000 (14:19 +0000)]
Merge pull request #6431 from StevenPuttemans:add_fixed_video_2.4

8 years agoMerge pull request #6432 from kevin-coder:bugfix_6317_Restore_2.4
Alexander Alekhin [Tue, 19 Apr 2016 13:32:44 +0000 (13:32 +0000)]
Merge pull request #6432 from kevin-coder:bugfix_6317_Restore_2.4

8 years agoadd fixed video
StevenPuttemans [Tue, 19 Apr 2016 08:43:20 +0000 (10:43 +0200)]
add fixed video

8 years agofix typo
Thomas Schenker [Tue, 19 Apr 2016 13:09:27 +0000 (15:09 +0200)]
fix typo

8 years agoMore compilation warnings fixed
Maksim Shabunin [Tue, 19 Apr 2016 13:08:48 +0000 (16:08 +0300)]
More compilation warnings fixed

8 years agoFixed compiation problems
Maksim Shabunin [Tue, 19 Apr 2016 11:50:07 +0000 (14:50 +0300)]
Fixed compiation problems

8 years agoRestore 2.4 source branch for bug fix 6317.
Kevin, Hu [Tue, 19 Apr 2016 11:27:42 +0000 (19:27 +0800)]
Restore 2.4 source branch for bug fix 6317.

8 years agoMerge pull request #6393 from paroj:v4l_exposure
Alexander Alekhin [Mon, 18 Apr 2016 15:14:21 +0000 (15:14 +0000)]
Merge pull request #6393 from paroj:v4l_exposure

8 years agoMerge pull request #5516 from AVshokurov:master
Alexander Alekhin [Mon, 18 Apr 2016 15:13:14 +0000 (15:13 +0000)]
Merge pull request #5516 from AVshokurov:master

8 years agoMerge pull request #6421 from alalek:backport_6417
Alexander Alekhin [Mon, 18 Apr 2016 15:12:16 +0000 (15:12 +0000)]
Merge pull request #6421 from alalek:backport_6417

8 years agoFixed typo in BRISK feature detector.
Ivar Clemens [Mon, 18 Apr 2016 12:04:04 +0000 (13:04 +0100)]
Fixed typo in BRISK feature detector.

8 years agoMerge pull request #6397 from ioxp:androidCamLog
Alexander Alekhin [Mon, 18 Apr 2016 11:56:18 +0000 (11:56 +0000)]
Merge pull request #6397 from ioxp:androidCamLog

8 years agofix for writing 16-bit jpeg2000
Suleyman TURKMEN [Sat, 16 Apr 2016 21:37:28 +0000 (00:37 +0300)]
fix for writing 16-bit jpeg2000

8 years agoFixing doc for cv::Mat::forEach
Philipp Hasper [Mon, 18 Apr 2016 11:51:07 +0000 (13:51 +0200)]
Fixing doc for cv::Mat::forEach

image.forEachWithPosition does not exist

8 years agoMerge pull request #6410 from alalek:issue_6403
Alexander Alekhin [Mon, 18 Apr 2016 11:43:14 +0000 (11:43 +0000)]
Merge pull request #6410 from alalek:issue_6403

8 years agoMerge pull request #6417 from sturkmen72:patch-14
Alexander Alekhin [Mon, 18 Apr 2016 10:35:28 +0000 (10:35 +0000)]
Merge pull request #6417 from sturkmen72:patch-14

8 years agoMerge pull request #6408 from dtmoodie:InputOutputArray_constructor_fix
Alexander Alekhin [Mon, 18 Apr 2016 10:34:42 +0000 (10:34 +0000)]
Merge pull request #6408 from dtmoodie:InputOutputArray_constructor_fix

8 years agoMerge pull request #6406 from ohnozzy:Bug-Fix-for-Issue-6377
Alexander Alekhin [Mon, 18 Apr 2016 10:29:29 +0000 (10:29 +0000)]
Merge pull request #6406 from ohnozzy:Bug-Fix-for-Issue-6377

8 years agocmake: don't use -isystem for opencv_contrib paths
Alexander Alekhin [Thu, 14 Apr 2016 14:20:57 +0000 (17:20 +0300)]
cmake: don't use -isystem for opencv_contrib paths

8 years agoMerge pull request #6414 from mshabunin:fix-macosx-warnings
Maksim Shabunin [Sun, 17 Apr 2016 22:11:57 +0000 (22:11 +0000)]
Merge pull request #6414 from mshabunin:fix-macosx-warnings

8 years agoUpdates for XCode 7.3
Maksim Shabunin [Fri, 15 Apr 2016 18:48:39 +0000 (21:48 +0300)]
Updates for XCode 7.3

8 years agoMerge pull request #6359 from alalek:videocapture_exceptions
Alexander Alekhin [Sun, 17 Apr 2016 09:30:42 +0000 (09:30 +0000)]
Merge pull request #6359 from alalek:videocapture_exceptions

8 years agofix for writing 16-bit jpeg2000
Suleyman TURKMEN [Sat, 16 Apr 2016 21:37:28 +0000 (00:37 +0300)]
fix for writing 16-bit jpeg2000

8 years agoMerge pull request #6415 from mshabunin:fix-xcode-warnings-24
Maksim Shabunin [Sat, 16 Apr 2016 06:39:00 +0000 (06:39 +0000)]
Merge pull request #6415 from mshabunin:fix-xcode-warnings-24

8 years agoUpdates for XCode 7.3
Maksim Shabunin [Fri, 15 Apr 2016 18:56:50 +0000 (21:56 +0300)]
Updates for XCode 7.3

8 years agotemplated std::vector<T> constructor was being called instead of const std::vector...
Dan [Thu, 14 Apr 2016 19:43:48 +0000 (15:43 -0400)]
templated std::vector<T> constructor was being called instead of const std::vector<cv::cuda::GpuMat>.

8 years agoMerge pull request #6404 from solosuper:bugfix/issue6315
Alexander Alekhin [Thu, 14 Apr 2016 14:27:58 +0000 (14:27 +0000)]
Merge pull request #6404 from solosuper:bugfix/issue6315

8 years agoMerge pull request #6407 from StevenPuttemans:fix_ts_perf_warnings
Alexander Alekhin [Thu, 14 Apr 2016 14:27:27 +0000 (14:27 +0000)]
Merge pull request #6407 from StevenPuttemans:fix_ts_perf_warnings

8 years agoMerge pull request #6405 from StevenPuttemans:fix_gstreamer_cap_linux
Alexander Alekhin [Thu, 14 Apr 2016 14:27:12 +0000 (14:27 +0000)]
Merge pull request #6405 from StevenPuttemans:fix_gstreamer_cap_linux

8 years agofixing gstreamer cap
StevenPuttemans [Thu, 14 Apr 2016 11:11:26 +0000 (13:11 +0200)]
fixing gstreamer cap

8 years agoremove warnings generated during TS module tests
StevenPuttemans [Thu, 14 Apr 2016 11:48:11 +0000 (13:48 +0200)]
remove warnings generated during TS module tests

8 years agoBug Fix for 6377
ohnozzy [Thu, 14 Apr 2016 11:35:57 +0000 (19:35 +0800)]
Bug Fix for 6377

Rewrite linearPolar & logPolar so that they do not depend on the
deprecated API CvMat. Issue 6377 is resolved in this way because the two
routines do not convert UMat to CvMat anymore.

8 years agofix #6315
solosuper [Thu, 14 Apr 2016 09:57:49 +0000 (11:57 +0200)]
fix #6315

8 years agoadd visualisation tool for 2.4 branch
StevenPuttemans [Thu, 14 Apr 2016 09:17:36 +0000 (11:17 +0200)]
add visualisation tool for 2.4 branch