<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>4688</bug_id>
          
          <creation_ts>2004-07-05 16:14:23 +0400</creation_ts>
          <short_desc>Crash on select a lot games</short_desc>
          <delta_ts>2007-01-18 21:44:26 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>pysol</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eugene Vlasov">eugvv</reporter>
          <assigned_to name="Alexei Takaseev">taf</assigned_to>
          <cc>antohami</cc>
    
    <cc>cas</cc>
    
    <cc>cow</cc>
    
    <cc>darktemplar</cc>
    
    <cc>evg</cc>
    
    <cc>george</cc>
    
    <cc>grenka</cc>
    
    <cc>imz</cc>
    
    <cc>lav</cc>
    
    <cc>master</cc>
    
    <cc>mithraen</cc>
    
    <cc>nbr</cc>
    
    <cc>qa_viy</cc>
    
    <cc>rider</cc>
    
    <cc>sem</cc>
    
    <cc>shaba</cc>
    
    <cc>sin</cc>
    
    <cc>slev</cc>
    
    <cc>vitty</cc>
    
    <cc>viy</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>16460</commentid>
    <comment_count>0</comment_count>
    <who name="Eugene Vlasov">eugvv</who>
    <bug_when>2004-07-05 16:14:23 +0400</bug_when>
    <thetext>[eugene@eugene-home eugene]$ rpm -qa|grep pysol
pysol-sound-server-3.00-alt4
pysol-4.82-alt3
[eugene@eugene-home eugene]$ rpm -qa|grep ^python|sort
python-2.3.3-alt10
python-base-2.3.3-alt10
python-dev-2.3.3-alt10
python-doc-2.3.3-alt1
python-info-2.3.3-alt10
python-modules-2.3.3-alt10
python-modules-bsddb-2.3.3-alt10
python-modules-compiler-2.3.3-alt10
python-modules-curses-2.3.3-alt10
python-modules-email-2.3.3-alt10
python-modules-encodings-2.3.3-alt10
python-modules-hotshot-2.3.3-alt10
python-modules-logging-2.3.3-alt10
python-modules-tkinter-2.3.3-alt10
python-modules-xml-2.3.3-alt10
python-strict-2.3.3-alt10
python-tools-i18n-2.3.3-alt10
python-tools-idle-2.3.3-alt10
python-tools-modulator-2.3.3-alt10

При выборе многих игр выдает ошибки вроде следующей:
  Internal error. Please report this bug:
  exception.TypeError:
unbound method createGame() must be called with Klondike instance as first
argument (got EightTimesEight instance instead)
и вылетает. После этого запустить его можно только после удаления ~/.pysol/ с
потерей всех настроек и статистики.
Вот список игр, на которых это воспроизводится:
  8 x 8, Achtmal Acht, American Toad, Baby Spiderette, Backer&apos;s Dozen, Batsford,
Big Harp, Black Widow, Blind Alleys, Brunswick, Busy Aces, Casino Klondike,
Chameleon, Chessboard, Corona, Courtyard, Cruel, Deuces, Die Russische, Die
Schlange, Double Canfield, Double Klondike by Threes, Double Rail, Eastcliff,
Forty and Eight, Free Napoleon, Gargantua, Good Measure, Grandmother&apos;s Game,
Ground for a Divorce, Indian, Irmgard, Klondike by Threes, Lady Betty, Little
Forty, Lucas, Maria, Martha, Midshipman, Milligan Cell, Napoleon, Pas Seul,
Peek, Poker Shuffle, Quadrangle, Rainbow, Rainfall, Red and Black, Scorpion,
Simple Simon, Single Rail, Spanish Patience, Spider, Spiderette, Stalactites,
Steps, Storehouse, Three Shuffles and a Draw, Thumb and Pouch, Trefoil,
Variegated Canfield, Vegas Klondike, Waning Moon, Wasp, Westcliff, Whitehead,
Will o&apos;the Wisp, Zebra</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16479</commentid>
    <comment_count>1</comment_count>
    <who name="Alexei Takaseev">taf</who>
    <bug_when>2004-07-05 16:39:23 +0400</bug_when>
    <thetext>По всему похоже, что это те игры, которые имеются в меню выбора, но реально
отсутствующие. Надо патчить исходники :(</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16496</commentid>
    <comment_count>2</comment_count>
    <who name="Eugene Vlasov">eugvv</who>
    <bug_when>2004-07-05 17:17:27 +0400</bug_when>
    <thetext>Нет, эти игры в исходниках есть (я немного поковырялся). Проблема в том, что там
довольно сложная система наследования. Ошибка возникает при вызове методов
класса - родителя, которые перекрыты (конструкция вида BaseClass.Method(self,
...)). Почему такая конструкция не работает в данном случае - не знаю.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16652</commentid>
    <comment_count>3</comment_count>
    <who name="Alexei Takaseev">taf</who>
    <bug_when>2004-07-07 04:57:32 +0400</bug_when>
    <thetext>Не, на таком уровне в python я не спец. Я пакет-то вытащил из orphaned только
потому, что некоторые игры из него понравились. А уж настолько серьезно
перетряхивать потроха исходников моих знаний явно недостаточно. Летом как бы
обещается бета пятой версии pysol, может там что сделают?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16965</commentid>
    <comment_count>4</comment_count>
    <who name="Eugene Vlasov">eugvv</who>
    <bug_when>2004-07-12 20:38:27 +0400</bug_when>
    <thetext>Кажется я нашел решение. Вот кусок дебиановского патча, который исправляет
положение:

---- pysol-4.82.orig/src/main.py
+++ pysol-4.82/src/main.py
@@ -92,7 +92,7 @@
 
     # try to load plugins
     if not &quot;--noplugins&quot; in args[1:]:
-        for dir in (os.path.join(app.dataloader.dir, &quot;games&quot;),
+        for dir in (#os.path.join(app.dataloader.dir, &quot;games&quot;),
                     os.path.join(app.dataloader.dir, &quot;plugins&quot;),
                     app.dn.plugins):
             try:

Проблема в том, что файлы из каталога games импортируются дважды - из pysol.py и
из main.py.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>16999</commentid>
    <comment_count>5</comment_count>
    <who name="Alexei Takaseev">taf</who>
    <bug_when>2004-07-13 18:39:32 +0400</bug_when>
    <thetext>Нда, как все просто, когда знаешь куда смотреть :)

Патч приложен к сборке pysol-4.82-alt4. Ушло в incoming</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>44647</commentid>
    <comment_count>6</comment_count>
    <who name="Eugene Vlasov">eugvv</who>
    <bug_when>2007-01-18 21:44:26 +0300</bug_when>
    <thetext>*** Bug 1412 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>