Commit 8c15bb0f authored by mxh's avatar mxh
Browse files

Issue #3256973 by rkoller, mxh: When trying to install ECA or Context Stack...

Issue #3256973 by rkoller, mxh: When trying to install ECA or Context Stack alone a fatal error takes place "Method Drupal\context_stack\ContextStackTrait::__sleep() cannot take arguments"
parent 3a758251
Loading
Loading
Loading
Loading
+10 −20
Original line number Diff line number Diff line
@@ -78,11 +78,9 @@ trait ContextStackTrait {
   * Additionally returns the cache context ID 'context_stack' and all cache
   * contexts from used context stacks.
   */
  public function getCacheContexts($parent_class = NULL) {
  public function getCacheContexts() {
    $contexts = [];
    if (!isset($parent_class)) {
      $parent_class = get_class($this);
    }
    $parent_class = func_get_arg(0) ?: get_class($this);
    while ($parent_class = get_parent_class($parent_class)) {
      if (method_exists($parent_class, __FUNCTION__)) {
        $contexts = $parent_class::getCacheContexts($parent_class);
@@ -107,7 +105,7 @@ trait ContextStackTrait {
   * Performs a check whether this object uses a stack that does not have
   * a specified purpose. In such case, we need to disable caching on this.
   */
  public function getCacheMaxAge($parent_class = NULL) {
  public function getCacheMaxAge() {
    foreach ($this->contextStacks as $stack) {
      if (!$stack->hasPurpose()) {
        // Context stacks without a specified purpose cannot be identified
@@ -115,9 +113,7 @@ trait ContextStackTrait {
        return 0;
      }
    }
    if (!isset($parent_class)) {
      $parent_class = get_class($this);
    }
    $parent_class = func_get_arg(0) ?: get_class($this);
    while ($parent_class = get_parent_class($parent_class)) {
      if (method_exists($parent_class, __FUNCTION__)) {
        return $parent_class::getCacheMaxAge($parent_class);
@@ -131,11 +127,9 @@ trait ContextStackTrait {
   *
   * Adds cache tags from all used context stacks.
   */
  public function getCacheTags($parent_class = NULL) {
  public function getCacheTags() {
    $tags = [];
    if (!isset($parent_class)) {
      $parent_class = get_class($this);
    }
    $parent_class = func_get_arg(0) ?: get_class($this);
    while ($parent_class = get_parent_class($parent_class)) {
      if (method_exists($parent_class, __FUNCTION__)) {
        $tags = $parent_class::getCacheTags($parent_class);
@@ -154,11 +148,9 @@ trait ContextStackTrait {
   * Unsets assigned context stacks having a purpose,
   * but keeping their purpose in mind for unserialization.
   */
  public function __sleep($parent_class = NULL) {
  public function __sleep() {
    $vars = [];
    if (!isset($parent_class)) {
      $parent_class = get_class($this);
    }
    $parent_class = func_get_arg(0) ?: get_class($this);
    while ($parent_class = get_parent_class($parent_class)) {
      if (method_exists($parent_class, __FUNCTION__)) {
        $vars = $parent_class::__sleep($parent_class);
@@ -185,10 +177,8 @@ trait ContextStackTrait {
  /**
   * {@inheritdoc}
   */
  public function __wakeup($parent_class = NULL) {
    if (!isset($parent_class)) {
      $parent_class = get_class($this);
    }
  public function __wakeup() {
    $parent_class = func_get_arg(0) ?: get_class($this);
    while ($parent_class = get_parent_class($parent_class)) {
      if (method_exists($parent_class, __FUNCTION__)) {
        $parent_class::__wakeup($parent_class);