com php-src: Fixed tests when using cumstom php.ini(session .save_handler): ext/session/tests/bug32330 .phpt ext/session/tests/bug60634.phpt ext/ses sion/tests/bug60634_error_1.phpt ext/sessio n/tests/bug60634_error_2.phpt ext/session/t ests/bug60634_error_3.phpt ext/session/test s/bug60634_error_4.phpt ext/session/tests/b ug60634_error_5.phpt ext/session/tests/bug 72940.phpt ext/session/tests/bug73100 .phpt ext/session/tests/rfc1867.phpt ext/sessio n/test

[email protected] (Xinchen Hui)
Newsgroups php.cvs
Message-ID <[email protected]>
Commit:    1b22e9dc2eaa754d1733f9e73e7041d3a006d7fc
Author:    Xinchen Hui <[email protected]>         Tue, 9 May 2017 11:13:41 +0800
Parents:   d40a852919f50c152a1273ddddaa5df506da284a
Branches:  PHP-7.0 PHP-7.1 master

Link:       http://git.php.net/?p=php-src.git;a=commitdiff;h=1b22e9dc2eaa754d1733f9e73e7041d3a006d7fc

Log:
Fixed tests when using cumstom php.ini(session.save_handler)

Changed paths:
  M  ext/session/tests/bug32330.phpt
  M  ext/session/tests/bug60634.phpt
  M  ext/session/tests/bug60634_error_1.phpt
  M  ext/session/tests/bug60634_error_2.phpt
  M  ext/session/tests/bug60634_error_3.phpt
  M  ext/session/tests/bug60634_error_4.phpt
  M  ext/session/tests/bug60634_error_5.phpt
  M  ext/session/tests/bug72940.phpt
  M  ext/session/tests/bug73100.phpt
  M  ext/session/tests/rfc1867.phpt
  M  ext/session/tests/rfc1867_cleanup.phpt
  M  ext/session/tests/rfc1867_disabled.phpt
  M  ext/session/tests/rfc1867_disabled_2.phpt
  M  ext/session/tests/rfc1867_inter.phpt
  M  ext/session/tests/rfc1867_no_name.phpt
  M  ext/session/tests/rfc1867_sid_cookie.phpt
  M  ext/session/tests/rfc1867_sid_get.phpt
  M  ext/session/tests/rfc1867_sid_get_2.phpt
  M  ext/session/tests/rfc1867_sid_invalid.phpt
  M  ext/session/tests/rfc1867_sid_only_cookie.phpt
  M  ext/session/tests/rfc1867_sid_only_cookie_2.phpt
  M  ext/session/tests/rfc1867_sid_post.phpt
  M  ext/session/tests/session_abort_basic.phpt
  M  ext/session/tests/session_module_name_variation3.phpt
  M  ext/session/tests/session_name_basic.phpt
  M  ext/session/tests/session_name_variation1.phpt
  M  ext/session/tests/session_reset_basic.phpt
  M  ext/session/tests/session_save_path_error.phpt
  M  ext/session/tests/session_save_path_variation1.phpt
  M  ext/session/tests/session_set_save_handler_basic.phpt
  M  ext/session/tests/session_set_save_handler_class_001.phpt
  M  ext/session/tests/session_set_save_handler_closures.phpt
  M  ext/session/tests/session_set_save_handler_error3.phpt
  M  ext/session/tests/session_set_save_handler_variation4.phpt
  M  ext/session/tests/session_set_save_handler_variation5.phpt
  M  ext/session/tests/session_set_save_handler_variation6.phpt
diff_1b22e9dc2eaa754d1733f9e73e7041d3a006d7fc.txt (text/plain, 16.5 KB)
diff --git a/ext/session/tests/bug32330.phpt b/ext/session/tests/bug32330.phpt
index 98d442a..b806ca6 100644
--- a/ext/session/tests/bug32330.phpt
+++ b/ext/session/tests/bug32330.phpt
@@ -9,6 +9,7 @@ session.name=sid
 session.save_path=/tmp
 session.gc_probability=1
 session.gc_divisor=1
+session.save_handler=files
 --FILE--
 <?php
 error_reporting(E_ALL);
diff --git a/ext/session/tests/bug60634.phpt b/ext/session/tests/bug60634.phpt
index 86dcb11..5f170c4 100644
--- a/ext/session/tests/bug60634.phpt
+++ b/ext/session/tests/bug60634.phpt
@@ -3,6 +3,7 @@ Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write())
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/bug60634_error_1.phpt b/ext/session/tests/bug60634_error_1.phpt
index d0733f5..38060c2 100644
--- a/ext/session/tests/bug60634_error_1.phpt
+++ b/ext/session/tests/bug60634_error_1.phpt
@@ -3,6 +3,7 @@ Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write())
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/bug60634_error_2.phpt b/ext/session/tests/bug60634_error_2.phpt
index 045b3f5..4ca598b 100644
--- a/ext/session/tests/bug60634_error_2.phpt
+++ b/ext/session/tests/bug60634_error_2.phpt
@@ -3,6 +3,7 @@ Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write())
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/bug60634_error_3.phpt b/ext/session/tests/bug60634_error_3.phpt
index b7840b0..74ae249 100644
--- a/ext/session/tests/bug60634_error_3.phpt
+++ b/ext/session/tests/bug60634_error_3.phpt
@@ -3,6 +3,7 @@ Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write())
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/bug60634_error_4.phpt b/ext/session/tests/bug60634_error_4.phpt
index 7970b35..b74f987 100644
--- a/ext/session/tests/bug60634_error_4.phpt
+++ b/ext/session/tests/bug60634_error_4.phpt
@@ -3,6 +3,7 @@ Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write())
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/bug60634_error_5.phpt b/ext/session/tests/bug60634_error_5.phpt
index 18f1266..5728d3a 100644
--- a/ext/session/tests/bug60634_error_5.phpt
+++ b/ext/session/tests/bug60634_error_5.phpt
@@ -3,6 +3,7 @@ Bug #60634 (Segmentation fault when trying to die() in SessionHandler::write())
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/bug72940.phpt b/ext/session/tests/bug72940.phpt
index 5f3c790..4d53bc0 100644
--- a/ext/session/tests/bug72940.phpt
+++ b/ext/session/tests/bug72940.phpt
@@ -4,6 +4,7 @@ Bug #72940 - SID always defined
 error_reporting=-1
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --COOKIE--
diff --git a/ext/session/tests/bug73100.phpt b/ext/session/tests/bug73100.phpt
index 0503541..3f3e925 100644
--- a/ext/session/tests/bug73100.phpt
+++ b/ext/session/tests/bug73100.phpt
@@ -4,6 +4,9 @@ Bug #73100 (session_destroy null dereference in ps_files_path_create)
 <?php
 if (!extension_loaded('session')) die('skip session extension not available');
 ?>
+--INI--
+session.save_path=
+session.save_handler=files
 --FILE--
 <?php
 ob_start();
diff --git a/ext/session/tests/rfc1867.phpt b/ext/session/tests/rfc1867.phpt
index 6b14bcb..2752888 100644
--- a/ext/session/tests/rfc1867.phpt
+++ b/ext/session/tests/rfc1867.phpt
@@ -16,6 +16,7 @@ session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=1%
 session.upload_progress.min_freq=0.000000001
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --COOKIE--
diff --git a/ext/session/tests/rfc1867_cleanup.phpt b/ext/session/tests/rfc1867_cleanup.phpt
index f84385b..7bcbba3 100644
--- a/ext/session/tests/rfc1867_cleanup.phpt
+++ b/ext/session/tests/rfc1867_cleanup.phpt
@@ -16,6 +16,7 @@ session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=1%
 session.upload_progress.min_freq=0.000000001
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --COOKIE--
diff --git a/ext/session/tests/rfc1867_disabled.phpt b/ext/session/tests/rfc1867_disabled.phpt
index 550ee3a..92047da 100644
--- a/ext/session/tests/rfc1867_disabled.phpt
+++ b/ext/session/tests/rfc1867_disabled.phpt
@@ -15,6 +15,7 @@ session.upload_progress.cleanup=0
 session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=1%
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --COOKIE--
diff --git a/ext/session/tests/rfc1867_disabled_2.phpt b/ext/session/tests/rfc1867_disabled_2.phpt
index 83e97ee..1dfac33 100644
--- a/ext/session/tests/rfc1867_disabled_2.phpt
+++ b/ext/session/tests/rfc1867_disabled_2.phpt
@@ -15,6 +15,7 @@ session.upload_progress.cleanup=0
 session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=1%
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --COOKIE--
diff --git a/ext/session/tests/rfc1867_inter.phpt b/ext/session/tests/rfc1867_inter.phpt
index 4d9b262..73ff6e8 100644
--- a/ext/session/tests/rfc1867_inter.phpt
+++ b/ext/session/tests/rfc1867_inter.phpt
@@ -16,6 +16,7 @@ session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=1%
 session.upload_progress.min_freq=0.000000001
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --COOKIE--
diff --git a/ext/session/tests/rfc1867_no_name.phpt b/ext/session/tests/rfc1867_no_name.phpt
index d68a61d..6a6eb71 100644
--- a/ext/session/tests/rfc1867_no_name.phpt
+++ b/ext/session/tests/rfc1867_no_name.phpt
@@ -15,6 +15,7 @@ session.upload_progress.cleanup=0
 session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=1%
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --COOKIE--
diff --git a/ext/session/tests/rfc1867_sid_cookie.phpt b/ext/session/tests/rfc1867_sid_cookie.phpt
index 2864799..0c6ca61 100644
--- a/ext/session/tests/rfc1867_sid_cookie.phpt
+++ b/ext/session/tests/rfc1867_sid_cookie.phpt
@@ -15,6 +15,7 @@ session.upload_progress.cleanup=0
 session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=0
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --COOKIE--
diff --git a/ext/session/tests/rfc1867_sid_get.phpt b/ext/session/tests/rfc1867_sid_get.phpt
index e3a48a1..fc82f14 100644
--- a/ext/session/tests/rfc1867_sid_get.phpt
+++ b/ext/session/tests/rfc1867_sid_get.phpt
@@ -15,6 +15,7 @@ session.upload_progress.cleanup=0
 session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=0
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --GET--
diff --git a/ext/session/tests/rfc1867_sid_get_2.phpt b/ext/session/tests/rfc1867_sid_get_2.phpt
index e21ca4c..fadb196 100644
--- a/ext/session/tests/rfc1867_sid_get_2.phpt
+++ b/ext/session/tests/rfc1867_sid_get_2.phpt
@@ -15,6 +15,7 @@ session.upload_progress.cleanup=0
 session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=0
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --COOKIE--
diff --git a/ext/session/tests/rfc1867_sid_invalid.phpt b/ext/session/tests/rfc1867_sid_invalid.phpt
index 4dd8f1f..b434556 100644
--- a/ext/session/tests/rfc1867_sid_invalid.phpt
+++ b/ext/session/tests/rfc1867_sid_invalid.phpt
@@ -15,6 +15,7 @@ session.upload_progress.cleanup=0
 session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=0
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --COOKIE--
diff --git a/ext/session/tests/rfc1867_sid_only_cookie.phpt b/ext/session/tests/rfc1867_sid_only_cookie.phpt
index 41f6761..a9206ea 100644
--- a/ext/session/tests/rfc1867_sid_only_cookie.phpt
+++ b/ext/session/tests/rfc1867_sid_only_cookie.phpt
@@ -15,6 +15,7 @@ session.upload_progress.cleanup=0
 session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=0
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --COOKIE--
diff --git a/ext/session/tests/rfc1867_sid_only_cookie_2.phpt b/ext/session/tests/rfc1867_sid_only_cookie_2.phpt
index e705314..4c9a9e0 100644
--- a/ext/session/tests/rfc1867_sid_only_cookie_2.phpt
+++ b/ext/session/tests/rfc1867_sid_only_cookie_2.phpt
@@ -14,6 +14,7 @@ session.upload_progress.cleanup=0
 session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=0
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --GET--
diff --git a/ext/session/tests/rfc1867_sid_post.phpt b/ext/session/tests/rfc1867_sid_post.phpt
index 107957f..a919d9c 100644
--- a/ext/session/tests/rfc1867_sid_post.phpt
+++ b/ext/session/tests/rfc1867_sid_post.phpt
@@ -15,6 +15,7 @@ session.upload_progress.cleanup=0
 session.upload_progress.prefix=upload_progress_
 session.upload_progress.name=PHP_SESSION_UPLOAD_PROGRESS
 session.upload_progress.freq=0
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --POST_RAW--
diff --git a/ext/session/tests/session_abort_basic.phpt b/ext/session/tests/session_abort_basic.phpt
index 4a6702f..b9736a9 100644
--- a/ext/session/tests/session_abort_basic.phpt
+++ b/ext/session/tests/session_abort_basic.phpt
@@ -5,6 +5,7 @@ Test session_abort() function : basic functionality
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --FILE--
 <?php
 
diff --git a/ext/session/tests/session_module_name_variation3.phpt b/ext/session/tests/session_module_name_variation3.phpt
index de49195..2660a00 100644
--- a/ext/session/tests/session_module_name_variation3.phpt
+++ b/ext/session/tests/session_module_name_variation3.phpt
@@ -3,6 +3,7 @@ Test session_module_name() function : variation
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/session_name_basic.phpt b/ext/session/tests/session_name_basic.phpt
index 959f406..8c3a9bb 100644
--- a/ext/session/tests/session_name_basic.phpt
+++ b/ext/session/tests/session_name_basic.phpt
@@ -3,6 +3,7 @@ Test session_name() function : error functionality
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/session_name_variation1.phpt b/ext/session/tests/session_name_variation1.phpt
index b0de3ee..7809e60 100644
--- a/ext/session/tests/session_name_variation1.phpt
+++ b/ext/session/tests/session_name_variation1.phpt
@@ -3,6 +3,7 @@ Test session_name() function : variation
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/session_reset_basic.phpt b/ext/session/tests/session_reset_basic.phpt
index 75c6a04..1fb7f8f 100644
--- a/ext/session/tests/session_reset_basic.phpt
+++ b/ext/session/tests/session_reset_basic.phpt
@@ -5,6 +5,7 @@ Test session_reset() function : basic functionality
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --FILE--
 <?php
 
diff --git a/ext/session/tests/session_save_path_error.phpt b/ext/session/tests/session_save_path_error.phpt
index 815feee..8dd2def 100644
--- a/ext/session/tests/session_save_path_error.phpt
+++ b/ext/session/tests/session_save_path_error.phpt
@@ -4,6 +4,7 @@ Test session_save_path() function : error functionality
 session.gc_probability=0
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/session_save_path_variation1.phpt b/ext/session/tests/session_save_path_variation1.phpt
index d5f64d9..9100fb4 100644
--- a/ext/session/tests/session_save_path_variation1.phpt
+++ b/ext/session/tests/session_save_path_variation1.phpt
@@ -4,6 +4,7 @@ Test session_save_path() function : variation
 session.gc_probability=0
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/session_set_save_handler_basic.phpt b/ext/session/tests/session_set_save_handler_basic.phpt
index 6b99e8d..f6e8147 100644
--- a/ext/session/tests/session_set_save_handler_basic.phpt
+++ b/ext/session/tests/session_set_save_handler_basic.phpt
@@ -4,6 +4,7 @@ Test session_set_save_handler() function : basic functionality
 session.save_path=
 session.name=PHPSESSID
 session.gc_probability=0
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/session_set_save_handler_class_001.phpt b/ext/session/tests/session_set_save_handler_class_001.phpt
index f1656c3..c46d07f 100644
--- a/ext/session/tests/session_set_save_handler_class_001.phpt
+++ b/ext/session/tests/session_set_save_handler_class_001.phpt
@@ -2,8 +2,8 @@
 Test session_set_save_handler() : basic class wrapping existing handler
 --INI--
 session.use_strict_mode=1
-session.save_handler=files
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/session_set_save_handler_closures.phpt b/ext/session/tests/session_set_save_handler_closures.phpt
index 1251886..52ae336 100644
--- a/ext/session/tests/session_set_save_handler_closures.phpt
+++ b/ext/session/tests/session_set_save_handler_closures.phpt
@@ -3,6 +3,7 @@ Test session_set_save_handler() function : using closures as callbacks
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/session_set_save_handler_error3.phpt b/ext/session/tests/session_set_save_handler_error3.phpt
index fdf306a..cefbe81 100644
--- a/ext/session/tests/session_set_save_handler_error3.phpt
+++ b/ext/session/tests/session_set_save_handler_error3.phpt
@@ -3,6 +3,7 @@ Test session_set_save_handler() function : error functionality
 --INI--
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/session_set_save_handler_variation4.phpt b/ext/session/tests/session_set_save_handler_variation4.phpt
index a711fde..0684205 100644
--- a/ext/session/tests/session_set_save_handler_variation4.phpt
+++ b/ext/session/tests/session_set_save_handler_variation4.phpt
@@ -8,6 +8,7 @@ session.gc_divisor=1
 session.gc_maxlifetime=0
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --FILE--
 <?php
 
diff --git a/ext/session/tests/session_set_save_handler_variation5.phpt b/ext/session/tests/session_set_save_handler_variation5.phpt
index 6ad600e..a8c4f4e 100644
--- a/ext/session/tests/session_set_save_handler_variation5.phpt
+++ b/ext/session/tests/session_set_save_handler_variation5.phpt
@@ -7,6 +7,7 @@ session.gc_divisor=1
 session.gc_maxlifetime=0
 session.save_path=
 session.name=PHPSESSID
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
diff --git a/ext/session/tests/session_set_save_handler_variation6.phpt b/ext/session/tests/session_set_save_handler_variation6.phpt
index 8d53637..3f3f7a1 100644
--- a/ext/session/tests/session_set_save_handler_variation6.phpt
+++ b/ext/session/tests/session_set_save_handler_variation6.phpt
@@ -5,6 +5,7 @@ session.lazy_write=1
 session.save_path=
 session.name=PHPSESSID
 session.gc_probability=0
+session.save_handler=files
 --SKIPIF--
 <?php include('skipif.inc'); ?>
 --FILE--
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.