Project

General

Profile

Bug #12391

backport r55063

Added by usa (Usaku NAKAMURA) about 3 years ago. Updated almost 3 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
-
[ruby-dev:49627]

Description

バックポート用チケットです。
オブジェクト循環参照系でたまたまobject idがBignumになっちゃった時だけ踏むバグの修正です。

Associated revisions

Revision f1cae09e
Added by usa (Usaku NAKAMURA) about 3 years ago

merge revision(s) 55063: [Backport #12391]

    * thread.c (recursive_list_access): a object id may be a Bignum.  so,
      the list must be a objhash, instead of a identhash.
      this fixes many test errors on mswin64 CI.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55353 b2dd03c8-39d4-4d8f-98ff-823fe69b080e

Revision 55353
Added by usa (Usaku NAKAMURA) about 3 years ago

merge revision(s) 55063: [Backport #12391]

* thread.c (recursive_list_access): a object id may be a Bignum.  so,
  the list must be a objhash, instead of a identhash.
  this fixes many test errors on mswin64 CI.

Revision e206da0a
Added by nagachika (Tomoyuki Chikanaga) about 3 years ago

merge revision(s) 55063: [Backport #12391]

    * thread.c (recursive_list_access): a object id may be a Bignum.  so,
      the list must be a objhash, instead of a identhash.
      this fixes many test errors on mswin64 CI.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e

Revision 55383
Added by nagachika (Tomoyuki Chikanaga) about 3 years ago

merge revision(s) 55063: [Backport #12391]

* thread.c (recursive_list_access): a object id may be a Bignum.  so,
  the list must be a objhash, instead of a identhash.
  this fixes many test errors on mswin64 CI.

Revision 62b4c459
Added by usa (Usaku NAKAMURA) almost 3 years ago

merge revision(s) 54168: [Backport #12391]

    * bignum.c (rb_big_hash): make it public function to be available in
      other source files, and remove documentation comment for Bignum#hash.

    * bignum.c (Bignum#hash): remove its definition because it is unified
      with Object#hash.

    * include/ruby/intern.h (rb_big_hash): add a prototype declaration.

    * hash.c (any_hash): treat Bignum values directly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e

Revision 55598
Added by usa (Usaku NAKAMURA) almost 3 years ago

merge revision(s) 54168: [Backport #12391]

* bignum.c (rb_big_hash): make it public function to be available in
  other source files, and remove documentation comment for Bignum#hash.

* bignum.c (Bignum#hash): remove its definition because it is unified
  with Object#hash.

* include/ruby/intern.h (rb_big_hash): add a prototype declaration.

* hash.c (any_hash): treat Bignum values directly.

Revision c38982f7
Added by usa (Usaku NAKAMURA) almost 3 years ago

  • bignum.c (Init_Bignum): revert a part of previous commit (r55598), because the implementation of Object#hash is a little difference from trunk. cf. [Backport #12391]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_2@55599 b2dd03c8-39d4-4d8f-98ff-823fe69b080e

Revision 55599
Added by usa (Usaku NAKAMURA) almost 3 years ago

  • bignum.c (Init_Bignum): revert a part of previous commit (r55598), because the implementation of Object#hash is a little difference from trunk. cf. [Backport #12391]

Revision 7dafaea0
Added by nagachika (Tomoyuki Chikanaga) almost 3 years ago

merge revision(s) 54168: [Backport #12391]

    * bignum.c (rb_big_hash): make it public function to be available in
      other source files, and remove documentation comment for Bignum#hash.

    * bignum.c (Bignum#hash): remove its definition because it is unified
      with Object#hash.

    * include/ruby/intern.h (rb_big_hash): add a prototype declaration.

    * hash.c (any_hash): treat Bignum values directly.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@55633 b2dd03c8-39d4-4d8f-98ff-823fe69b080e

Revision 55633
Added by nagachika (Tomoyuki Chikanaga) almost 3 years ago

merge revision(s) 54168: [Backport #12391]

* bignum.c (rb_big_hash): make it public function to be available in
  other source files, and remove documentation comment for Bignum#hash.

* bignum.c (Bignum#hash): remove its definition because it is unified
  with Object#hash.

* include/ruby/intern.h (rb_big_hash): add a prototype declaration.

* hash.c (any_hash): treat Bignum values directly.

History

Updated by usa (Usaku NAKAMURA) about 3 years ago

  • Backport changed from 2.1: DONTNEED, 2.2: REQUIRED, 2.3: REQUIRED to 2.1: DONTNEED, 2.2: DONE, 2.3: REQUIRED

ruby_2_2 r55353 merged revision(s) 55063.

Updated by nagachika (Tomoyuki Chikanaga) about 3 years ago

  • Backport changed from 2.1: DONTNEED, 2.2: DONE, 2.3: REQUIRED to 2.1: DONTNEED, 2.2: DONE, 2.3: DONE

ruby_2_3 r55383 merged revision(s) 55063.

Updated by usa (Usaku NAKAMURA) almost 3 years ago

  • Backport changed from 2.1: DONTNEED, 2.2: DONE, 2.3: DONE to 2.1: DONTNEED, 2.2: REQUIRED, 2.3: REQUIRED

r54168 が入ってないとむしろ症状が悪化していました……。

Updated by usa (Usaku NAKAMURA) almost 3 years ago

  • Backport changed from 2.1: DONTNEED, 2.2: REQUIRED, 2.3: REQUIRED to 2.1: DONTNEED, 2.2: DONE, 2.3: REQUIRED

ruby_2_2 r55598 merged revision(s) 54168.

Updated by nagachika (Tomoyuki Chikanaga) almost 3 years ago

  • Backport changed from 2.1: DONTNEED, 2.2: DONE, 2.3: REQUIRED to 2.1: DONTNEED, 2.2: DONE, 2.3: DONE

ruby_2_3 r55633 merged revision(s) 54168.

Also available in: Atom PDF