]> granicus.if.org Git - php/log
php
10 years agoMerge remote-tracking branch 'origin/master' into native-tls
Anatol Belski [Wed, 19 Nov 2014 22:21:34 +0000 (23:21 +0100)]
Merge remote-tracking branch 'origin/master' into native-tls

* origin/master:
  NEWS
  Fix #68355: Inconsistency in example php.ini comments
  NEWS
  Fixed bug #68452 php-fpm man page is oudated (-O)
  NEWS
  Fixed bug #68452 php-fpm man page is oudated (-g, -R, -z)
  NEWS
  Fixed bug #68381 Set FPM log level earlier during init

10 years agoMerge branch 'PHP-5.6'
Peter Cowburn [Wed, 19 Nov 2014 17:06:59 +0000 (17:06 +0000)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  NEWS
  Fix #68355: Inconsistency in example php.ini comments

10 years agoNEWS
Peter Cowburn [Wed, 19 Nov 2014 17:03:15 +0000 (17:03 +0000)]
NEWS

10 years agoFix #68355: Inconsistency in example php.ini comments
Chris McCafferty [Mon, 10 Nov 2014 03:30:51 +0000 (22:30 -0500)]
Fix #68355: Inconsistency in example php.ini comments

There are some arbitrary differences between php.ini-production and
php.ini-development. This patch corrects the differences.

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Wed, 19 Nov 2014 15:49:37 +0000 (16:49 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  NEWS
  Fixed bug #68452 php-fpm man page is oudated (-O)
  NEWS
  Fixed bug #68452 php-fpm man page is oudated (-g, -R, -z)
  NEWS
  Fixed bug #68381 Set FPM log level earlier during init

10 years agoNEWS
Remi Collet [Wed, 19 Nov 2014 15:49:23 +0000 (16:49 +0100)]
NEWS

10 years agoFixed bug #68452 php-fpm man page is oudated (-O)
Remi Collet [Wed, 19 Nov 2014 15:49:05 +0000 (16:49 +0100)]
Fixed bug #68452 php-fpm man page is oudated (-O)

10 years agoMerge branch 'PHP-5.5' into PHP-5.6
Remi Collet [Wed, 19 Nov 2014 15:48:21 +0000 (16:48 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  NEWS
  Fixed bug #68452 php-fpm man page is oudated (-g, -R, -z)
  NEWS
  Fixed bug #68381 Set FPM log level earlier during init

10 years agoNEWS
Remi Collet [Wed, 19 Nov 2014 15:47:52 +0000 (16:47 +0100)]
NEWS

10 years agoFixed bug #68452 php-fpm man page is oudated (-g, -R, -z)
Remi Collet [Wed, 19 Nov 2014 15:46:51 +0000 (16:46 +0100)]
Fixed bug #68452 php-fpm man page is oudated (-g, -R, -z)

10 years agodefault tsrmls cache to NULL
Anatol Belski [Wed, 19 Nov 2014 11:26:24 +0000 (12:26 +0100)]
default tsrmls cache to NULL

10 years agoMerge remote-tracking branch 'origin/master' into native-tls
Anatol Belski [Tue, 18 Nov 2014 20:18:52 +0000 (21:18 +0100)]
Merge remote-tracking branch 'origin/master' into native-tls

* origin/master: (398 commits)
  NEWS
  add test for bug #68381
  Fixed bug #68381 Set FPM log level earlier during init
  proper dllexport
  move to size_t where zend_string is used internally
  fix some datatype mismatches
  return after the warning, to fix uninitialized salt usage
  fix datatype mismatches
  add missing type specifier
  fix datatype mismatches
  fix unsigned check
  "extern" shouldn't be used for definitions
  joined identical conditional blocks
  simplify fpm tests
  SEND_VAR_NO_REF optimization
  Add test for bug #68442
  Add various tests for FPM - covering recent bugs (68420, 68421, 68423, 68428) - for UDS - for ping and status URI - for multi pool and multi mode
  Include small MIT FastCGI client library from https://github.com/adoy/PHP-FastCGI-Client
  Get rid of zend_free_op structure (use zval* instead). Get rid of useless TSRMLS arguments.
  Add new FPM test for IPv4/IPv6
  ...

Conflicts:
win32/build/config.w32

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Tue, 18 Nov 2014 16:46:15 +0000 (17:46 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  NEWS
  add test for bug #68381
  Fixed bug #68381 Set FPM log level earlier during init

10 years agoNEWS
Remi Collet [Tue, 18 Nov 2014 16:45:12 +0000 (17:45 +0100)]
NEWS

10 years agoadd test for bug #68381
Remi Collet [Tue, 18 Nov 2014 16:44:53 +0000 (17:44 +0100)]
add test for bug #68381

10 years agoFixed bug #68381 Set FPM log level earlier during init
David Zuelke [Sat, 8 Nov 2014 22:22:54 +0000 (17:22 -0500)]
Fixed bug #68381 Set FPM log level earlier during init

The log level will be ignored throughout log events in fpm_unix_init_main, until
the very end when zlog_set_level is finally called.

In particular, fpm_unix_conf_wp may throw notices like this:

> [08-Nov-2014 17:13:36] NOTICE: [pool www] 'user' directive is ignored when…

Which will still appear even if log_level in php-fpm.conf is set to warning+

10 years agoNEWS
Remi Collet [Tue, 18 Nov 2014 16:43:28 +0000 (17:43 +0100)]
NEWS

10 years agoFixed bug #68381 Set FPM log level earlier during init
David Zuelke [Sat, 8 Nov 2014 22:22:54 +0000 (17:22 -0500)]
Fixed bug #68381 Set FPM log level earlier during init

The log level will be ignored throughout log events in fpm_unix_init_main, until
the very end when zlog_set_level is finally called.

In particular, fpm_unix_conf_wp may throw notices like this:

> [08-Nov-2014 17:13:36] NOTICE: [pool www] 'user' directive is ignored when…

Which will still appear even if log_level in php-fpm.conf is set to warning+

10 years agoproper dllexport
Anatol Belski [Tue, 18 Nov 2014 14:38:35 +0000 (15:38 +0100)]
proper dllexport

10 years agomove to size_t where zend_string is used internally
Anatol Belski [Tue, 18 Nov 2014 12:17:43 +0000 (13:17 +0100)]
move to size_t where zend_string is used internally

10 years agofix some datatype mismatches
Anatol Belski [Tue, 18 Nov 2014 12:13:23 +0000 (13:13 +0100)]
fix some datatype mismatches

10 years agoreturn after the warning, to fix uninitialized salt usage
Anatol Belski [Tue, 18 Nov 2014 11:34:45 +0000 (12:34 +0100)]
return after the warning, to fix uninitialized salt usage

10 years agofix datatype mismatches
Anatol Belski [Tue, 18 Nov 2014 11:11:25 +0000 (12:11 +0100)]
fix datatype mismatches

10 years agoadd missing type specifier
Anatol Belski [Tue, 18 Nov 2014 10:53:33 +0000 (11:53 +0100)]
add missing type specifier

10 years agofix datatype mismatches
Anatol Belski [Tue, 18 Nov 2014 10:49:06 +0000 (11:49 +0100)]
fix datatype mismatches

10 years agofix unsigned check
Anatol Belski [Tue, 18 Nov 2014 10:03:54 +0000 (11:03 +0100)]
fix unsigned check

10 years ago"extern" shouldn't be used for definitions
Anatol Belski [Tue, 18 Nov 2014 09:50:56 +0000 (10:50 +0100)]
"extern" shouldn't be used for definitions

10 years agojoined identical conditional blocks
Anatol Belski [Sat, 15 Nov 2014 12:12:25 +0000 (13:12 +0100)]
joined identical conditional blocks

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Tue, 18 Nov 2014 12:12:19 +0000 (13:12 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  simplify fpm tests

10 years agosimplify fpm tests
Remi Collet [Tue, 18 Nov 2014 12:11:53 +0000 (13:11 +0100)]
simplify fpm tests

10 years agoSEND_VAR_NO_REF optimization
Dmitry Stogov [Tue, 18 Nov 2014 11:37:36 +0000 (14:37 +0300)]
SEND_VAR_NO_REF optimization

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Tue, 18 Nov 2014 10:10:45 +0000 (11:10 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  Add test for bug #68442

10 years agoAdd test for bug #68442
Remi Collet [Tue, 18 Nov 2014 10:08:49 +0000 (11:08 +0100)]
Add test for bug #68442

Add another helper function fpm_display_log

Restore change from c996a989 badly reverted in 8c0cc49

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Tue, 18 Nov 2014 07:09:56 +0000 (08:09 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  Add various tests for FPM - covering recent bugs (68420, 68421, 68423, 68428) - for UDS - for ping and status URI - for multi pool and multi mode
  Include small MIT FastCGI client library from https://github.com/adoy/PHP-FastCGI-Client

10 years agoAdd various tests for FPM
Remi Collet [Tue, 18 Nov 2014 07:07:45 +0000 (08:07 +0100)]
Add various tests for FPM
- covering recent bugs (68420, 68421, 68423, 68428)
- for UDS
- for ping and status URI
- for multi pool and multi mode

10 years agoInclude small MIT FastCGI client library from
Remi Collet [Tue, 18 Nov 2014 07:01:18 +0000 (08:01 +0100)]
Include small MIT FastCGI client library from
https://github.com/adoy/PHP-FastCGI-Client

Add run_request function to easily run a FastCGI call,
which is needed for new tests.

10 years agoGet rid of zend_free_op structure (use zval* instead).
Dmitry Stogov [Tue, 18 Nov 2014 06:05:48 +0000 (09:05 +0300)]
Get rid of zend_free_op structure (use zval* instead).
Get rid of useless TSRMLS arguments.

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Mon, 17 Nov 2014 14:23:33 +0000 (15:23 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  Add new FPM test for IPv4/IPv6

10 years agoAdd new FPM test for IPv4/IPv6
Remi Collet [Mon, 17 Nov 2014 14:22:04 +0000 (15:22 +0100)]
Add new FPM test for IPv4/IPv6

Use 9000+PHP_INT_SIZE as poprt
- to avoid using default 9000
- to allow multipole 32/64 bits simultaneous run

10 years agoReorder fields for most often access pattern
Dmitry Stogov [Mon, 17 Nov 2014 11:06:50 +0000 (14:06 +0300)]
Reorder fields for most often access pattern

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Mon, 17 Nov 2014 08:43:56 +0000 (09:43 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  update fpm configuration for #68428
  update fpm configuration for #68428
  fix incompatible pointer types
  fix incompatible pointer types

10 years agoupdate fpm configuration for #68428
Remi Collet [Mon, 17 Nov 2014 08:35:20 +0000 (09:35 +0100)]
update fpm configuration for #68428

10 years agoMerge branch 'PHP-5.5' into PHP-5.6
Remi Collet [Mon, 17 Nov 2014 08:43:26 +0000 (09:43 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  update fpm configuration for #68428
  fix incompatible pointer types

10 years agoupdate fpm configuration for #68428
Remi Collet [Mon, 17 Nov 2014 08:35:20 +0000 (09:35 +0100)]
update fpm configuration for #68428

10 years agoupdate fpm configuration for #68428
Remi Collet [Mon, 17 Nov 2014 08:35:20 +0000 (09:35 +0100)]
update fpm configuration for #68428

10 years agofix incompatible pointer types
Anatol Belski [Mon, 17 Nov 2014 07:47:48 +0000 (08:47 +0100)]
fix incompatible pointer types

10 years agofix incompatible pointer types
Anatol Belski [Mon, 17 Nov 2014 07:48:32 +0000 (08:48 +0100)]
fix incompatible pointer types

10 years agofix incompatible pointer types
Anatol Belski [Mon, 17 Nov 2014 07:48:32 +0000 (08:48 +0100)]
fix incompatible pointer types

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Mon, 17 Nov 2014 08:23:59 +0000 (09:23 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  NEWS
  NEWS
  Fixed bug #68428 allowed_client is IPv4 only

10 years agoNEWS
Remi Collet [Mon, 17 Nov 2014 08:23:47 +0000 (09:23 +0100)]
NEWS

10 years agoMerge branch 'PHP-5.5' into PHP-5.6
Remi Collet [Mon, 17 Nov 2014 08:23:26 +0000 (09:23 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  NEWS
  Fixed bug #68428 allowed_client is IPv4 only

10 years agoNEWS
Remi Collet [Mon, 17 Nov 2014 08:23:16 +0000 (09:23 +0100)]
NEWS

10 years agoFixed bug #68428 allowed_client is IPv4 only
Remi Collet [Mon, 17 Nov 2014 08:22:13 +0000 (09:22 +0100)]
Fixed bug #68428 allowed_client is IPv4 only

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Mon, 17 Nov 2014 05:59:03 +0000 (06:59 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  comment about ipv4-mapped in fpm conf
  Improve fix bug #68421 access.format='%R' doesn't log ipv6 address

10 years agoMerge branch 'PHP-5.5' into PHP-5.6
Remi Collet [Mon, 17 Nov 2014 05:58:28 +0000 (06:58 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  comment about ipv4-mapped in fpm conf
  Improve fix bug #68421 access.format='%R' doesn't log ipv6 address

10 years agocomment about ipv4-mapped in fpm conf
Remi Collet [Mon, 17 Nov 2014 05:57:59 +0000 (06:57 +0100)]
comment about ipv4-mapped in fpm conf

10 years agoImprove fix bug #68421 access.format='%R' doesn't log ipv6 address
Remi Collet [Mon, 17 Nov 2014 05:53:38 +0000 (06:53 +0100)]
Improve fix bug #68421 access.format='%R' doesn't log ipv6 address

Log IPv4-Mapped-Ipv6 address as IPv4 (not as IPv6)

10 years agoMicro optimization
Dmitry Stogov [Mon, 17 Nov 2014 05:36:14 +0000 (08:36 +0300)]
Micro optimization

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Sun, 16 Nov 2014 17:01:01 +0000 (18:01 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  improve comments about FPM listen option

10 years agoMerge branch 'PHP-5.5' into PHP-5.6
Remi Collet [Sun, 16 Nov 2014 17:00:24 +0000 (18:00 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  improve comments about FPM listen option

10 years agoimprove comments about FPM listen option
Remi Collet [Sun, 16 Nov 2014 16:59:36 +0000 (17:59 +0100)]
improve comments about FPM listen option

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Sat, 15 Nov 2014 07:14:51 +0000 (08:14 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  NEWS
  NEWS

10 years agoNEWS
Remi Collet [Sat, 15 Nov 2014 07:14:43 +0000 (08:14 +0100)]
NEWS

10 years agoMerge branch 'PHP-5.5' into PHP-5.6
Remi Collet [Sat, 15 Nov 2014 07:14:09 +0000 (08:14 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  NEWS

10 years agoNEWS
Remi Collet [Sat, 15 Nov 2014 07:13:56 +0000 (08:13 +0100)]
NEWS

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Sat, 15 Nov 2014 07:12:07 +0000 (08:12 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  Fixed Bug #68420 listen=9000 listens to ipv6 localhost instead of all addresses

10 years agoMerge branch 'PHP-5.5' into PHP-5.6
Remi Collet [Sat, 15 Nov 2014 07:11:32 +0000 (08:11 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Fixed Bug #68420 listen=9000 listens to ipv6 localhost instead of all addresses

10 years agoFixed Bug #68420 listen=9000 listens to ipv6 localhost instead of all addresses
Remi Collet [Sat, 15 Nov 2014 07:08:23 +0000 (08:08 +0100)]
Fixed Bug #68420 listen=9000 listens to ipv6 localhost instead of all addresses

Restore default behavior when no address configured:
Listen on all IPv4 addresses.

At some time we could consider to switch to all IPv6
but this will be a BC break.

10 years agofix build
Anatol Belski [Fri, 14 Nov 2014 21:19:41 +0000 (22:19 +0100)]
fix build

ifdef this var declaration to avoid the vs warning

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Fri, 14 Nov 2014 18:14:53 +0000 (19:14 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  NEWS
  NEWS

10 years agoNEWS
Remi Collet [Fri, 14 Nov 2014 18:14:42 +0000 (19:14 +0100)]
NEWS

10 years agoMerge branch 'PHP-5.5' into PHP-5.6
Remi Collet [Fri, 14 Nov 2014 18:14:02 +0000 (19:14 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  NEWS

10 years agoNEWS
Remi Collet [Fri, 14 Nov 2014 18:13:53 +0000 (19:13 +0100)]
NEWS

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Fri, 14 Nov 2014 18:10:43 +0000 (19:10 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  Fix bug #68421 access.format='%R' doesn't log ipv6 address

10 years agoMerge branch 'PHP-5.5' into PHP-5.6
Remi Collet [Fri, 14 Nov 2014 18:10:19 +0000 (19:10 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Fix bug #68421 access.format='%R' doesn't log ipv6 address

10 years agoFix bug #68421 access.format='%R' doesn't log ipv6 address
Remi Collet [Fri, 14 Nov 2014 18:09:50 +0000 (19:09 +0100)]
Fix bug #68421 access.format='%R' doesn't log ipv6 address

10 years agoless spaces in the makefile generated commands
Anatol Belski [Fri, 14 Nov 2014 16:38:03 +0000 (17:38 +0100)]
less spaces in the makefile generated commands

10 years agoseparate LDFLAGS and ARFLAGS to fix the unknown opts warns
Anatol Belski [Fri, 14 Nov 2014 12:57:57 +0000 (13:57 +0100)]
separate LDFLAGS and ARFLAGS to fix the unknown opts warns

10 years agopartial cleanup to work with size_t str length in password_hash
Anatol Belski [Fri, 14 Nov 2014 10:27:23 +0000 (11:27 +0100)]
partial cleanup to work with size_t str length in password_hash

php_crypt() and co use int, though this is fair enough. Could
be refactored later for tidiness reasons.

10 years agoremove unused var
Anatol Belski [Fri, 14 Nov 2014 09:31:35 +0000 (10:31 +0100)]
remove unused var

10 years agoadded comment
Anatol Belski [Fri, 14 Nov 2014 09:20:03 +0000 (10:20 +0100)]
added comment

10 years agovalidate sockets portable way
Anatol Belski [Fri, 14 Nov 2014 09:17:43 +0000 (10:17 +0100)]
validate sockets portable way

10 years agofix unused var warning
Anatol Belski [Fri, 14 Nov 2014 09:05:53 +0000 (10:05 +0100)]
fix unused var warning

10 years agoremoved useless check
Anatol Belski [Fri, 14 Nov 2014 08:46:06 +0000 (09:46 +0100)]
removed useless check

the offset member is an unsigned

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Fri, 14 Nov 2014 16:33:14 +0000 (17:33 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  Fix bug #68423i PHP-FPM will no longer load all pools

10 years agoMerge branch 'PHP-5.5' into PHP-5.6
Remi Collet [Fri, 14 Nov 2014 16:32:46 +0000 (17:32 +0100)]
Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
  Fix bug #68423i PHP-FPM will no longer load all pools

10 years agoFix bug #68423i PHP-FPM will no longer load all pools
Remi Collet [Fri, 14 Nov 2014 16:29:31 +0000 (17:29 +0100)]
Fix bug #68423i PHP-FPM will no longer load all pools

The hash need to be unique per IP + Port
Previous version have (IPv4 only)
   sprintf(key, "%u.%u.%u.%u:%u", IPQUAD(&sa_in->sin_addr), (unsigned int) ntohs(sa_in->sin_port));

10 years agoMerge branch 'PHP-5.6'
Remi Collet [Fri, 14 Nov 2014 09:59:04 +0000 (10:59 +0100)]
Merge branch 'PHP-5.6'

* PHP-5.6:
  NEWS for 1b156207446e0c5ec8a9476ad0966b5daa82f516

10 years agoNEWS for 1b156207446e0c5ec8a9476ad0966b5daa82f516
Remi Collet [Fri, 14 Nov 2014 09:58:27 +0000 (10:58 +0100)]
NEWS for 1b156207446e0c5ec8a9476ad0966b5daa82f516

10 years agoavoid repeated strlen usage, remove unused vars
Anatol Belski [Thu, 13 Nov 2014 15:00:00 +0000 (16:00 +0100)]
avoid repeated strlen usage, remove unused vars

10 years agofix datatype mismatch
Anatol Belski [Thu, 13 Nov 2014 14:45:28 +0000 (15:45 +0100)]
fix datatype mismatch

10 years agofix datatype mismatch
Anatol Belski [Thu, 13 Nov 2014 14:27:53 +0000 (15:27 +0100)]
fix datatype mismatch

10 years agoextend warn list to exclude
Anatol Belski [Thu, 13 Nov 2014 13:29:21 +0000 (14:29 +0100)]
extend warn list to exclude

10 years agofix datatype mismatch and kick unused var
Anatol Belski [Thu, 13 Nov 2014 13:27:38 +0000 (14:27 +0100)]
fix datatype mismatch and kick unused var

10 years agofix datatype mismatches, remove dead part of code
Anatol Belski [Thu, 13 Nov 2014 13:17:41 +0000 (14:17 +0100)]
fix datatype mismatches, remove dead part of code

10 years agoremove unused vars
Anatol Belski [Thu, 13 Nov 2014 11:34:10 +0000 (12:34 +0100)]
remove unused vars

10 years agoadded missing type specifier
Anatol Belski [Thu, 13 Nov 2014 11:31:29 +0000 (12:31 +0100)]
added missing type specifier

10 years agoMicro optimization
Dmitry Stogov [Thu, 13 Nov 2014 14:36:08 +0000 (17:36 +0300)]
Micro optimization

10 years agofix merge
Remi Collet [Thu, 13 Nov 2014 12:09:44 +0000 (13:09 +0100)]
fix merge

10 years agoFix build with gmp < 4.2
Remi Collet [Thu, 13 Nov 2014 12:08:00 +0000 (13:08 +0100)]
Fix build with gmp < 4.2

See 3d6d863ccbd10d212352462b587ae1573af4f1d1
and acd7fcf55f81955e4837c750a5e45f83d3c55ba2