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

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

    <bug>
          <bug_id>6348</bug_id>
          
          <creation_ts>2005-03-29 12:48:58 +0400</creation_ts>
          <short_desc>why divide by zero isn&apos;t error ?</short_desc>
          <delta_ts>2012-03-16 13:57:42 +0400</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>php</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>P2</priority>
          <bug_severity>critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="algor">algor</reporter>
          <assigned_to name="Alexey Gladkov">legion</assigned_to>
          <cc>legion</cc>
    
    <cc>mike</cc>
          
          <qa_contact>qa-sisyphus</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>22838</commentid>
    <comment_count>0</comment_count>
    <who name="algor">algor</who>
    <bug_when>2005-03-29 12:48:59 +0400</bug_when>
    <thetext>суть проблемы. 
php по умолчанию не считает деление на ноль ошибкой. при делении на ноль
выдаётся предупреждение, и программа продолжает работать дальше, как будто так и
надо.

[agent_007@satellit~ ]$ rpm -q php                                             
                                 
php-4.3.11-alt0.cvs20050209

[agent_007@satellit~ ]$ /usr/bin/php -r &apos;$a=1; $b = 0; $c=$a/$b; echo &quot;c=$c\n&quot;;&apos;
Warning: Division by zero in Command line code on line 1
c=

для примера, perl в той же ситуации:
[agent_007@satellit~ ]$ perl -we &apos;$a=1; $b=0; $c=$a/$b ; print &quot;c=$c\n&quot;;&apos;      
                                 
Illegal division by zero at -e line 1.

возможно это поведение правильно (хотелось бы увидеть обоснование, почему). а
пока мне приходится прикладывать патч (в аттаче).
Steps to Reproduce:
1. /usr/bin/php -r &apos;$a=1; $b = 0; $c=$a/$b; echo &quot;c=$c\n&quot;;&apos;

Actual Results:  
Warning: Division by zero in Command line code on line 1
c=

Expected Results:  
Fatal error: Division by zero in Command line code on line 1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>22839</commentid>
    <comment_count>1</comment_count>
      <attachid>784</attachid>
    <who name="algor">algor</who>
    <bug_when>2005-03-29 12:51:36 +0400</bug_when>
    <thetext>Created attachment 784
патч для исправления поведения при делении на ноль.

патч для исправления поведения при делении на ноль.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>25017</commentid>
    <comment_count>2</comment_count>
    <who name="Alexey Gladkov">legion</who>
    <bug_when>2005-05-27 15:53:08 +0400</bug_when>
    <thetext>Исправлено.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>784</attachid>
            <date>2005-03-29 12:51:36 +0400</date>
            <delta_ts>2005-03-29 12:51:36 +0400</delta_ts>
            <desc>патч для исправления поведения при делении на ноль.</desc>
            <filename>php-4.3.10-alt-division-by-zero.patch</filename>
            <type>text/plain</type>
            <size>951</size>
            <attacher name="algor">algor</attacher>
            
              <data encoding="base64">LS0tIHBocC00LjMuMTAub3JpZy9leHQvYmNtYXRoL2JjbWF0aC5jCTIwMDMtMDYtMTIgMTY6MjM6
MTAgKzA0MDAKKysrIHBocC00LjMuMTAvZXh0L2JjbWF0aC9iY21hdGguYwkyMDA1LTAzLTI5IDEw
OjMxOjAyICswNDAwCkBAIC0zMDEsNyArMzAxLDcgQEAgUEhQX0ZVTkNUSU9OKGJjZGl2KQogCQkJ
Wl9UWVBFX1AocmV0dXJuX3ZhbHVlKSA9IElTX1NUUklORzsKIAkJCWJyZWFrOwogCQljYXNlIC0x
OiAvKiBkaXZpc2lvbiBieSB6ZXJvICovCi0JCQlwaHBfZXJyb3JfZG9jcmVmKE5VTEwgVFNSTUxT
X0NDLCBFX1dBUk5JTkcsICJEaXZpc2lvbiBieSB6ZXJvIik7CisJCQlwaHBfZXJyb3JfZG9jcmVm
KE5VTEwgVFNSTUxTX0NDLCBFX0VSUk9SLCAiRGl2aXNpb24gYnkgemVybyIpOwogCQkJYnJlYWs7
CiAJfQogCWJjX2ZyZWVfbnVtKCZmaXJzdCk7Ci0tLSBwaHAtNC4zLjEwLm9yaWcvWmVuZC96ZW5k
X29wZXJhdG9ycy5jCTIwMDQtMTEtMjkgMTI6MTU6MjggKzAzMDAKKysrIHBocC00LjMuMTAvWmVu
ZC96ZW5kX29wZXJhdG9ycy5jCTIwMDUtMDMtMjkgMTE6MDU6MzkgKzA0MDAKQEAgLTc0OSw3ICs3
NDksNyBAQCBaRU5EX0FQSSBpbnQgZGl2X2Z1bmN0aW9uKHp2YWwgKnJlc3VsdCwgCiAJemVuZGlf
Y29udmVydF9zY2FsYXJfdG9fbnVtYmVyKG9wMiwgb3AyX2NvcHksIHJlc3VsdCk7CiAKIAlpZiAo
KG9wMi0+dHlwZSA9PSBJU19MT05HICYmIG9wMi0+dmFsdWUubHZhbCA9PSAwKSB8fCAob3AyLT50
eXBlID09IElTX0RPVUJMRSAmJiBvcDItPnZhbHVlLmR2YWwgPT0gMC4wKSkgewotCQl6ZW5kX2Vy
cm9yKEVfV0FSTklORywgIkRpdmlzaW9uIGJ5IHplcm8iKTsKKwkJemVuZF9lcnJvcihFX0VSUk9S
LCAiRGl2aXNpb24gYnkgemVybyIpOwogCQlaVkFMX0JPT0wocmVzdWx0LCAwKTsKIAkJcmV0dXJu
IEZBSUxVUkU7CQkJLyogZGl2aXNpb24gYnkgemVybyAqLwogCX0K
</data>

          </attachment>
      

    </bug>

</bugzilla>