Jan Lehnardt [Tue, 12 Feb 2002 18:29:27 +0000 (18:29 +0000)]
- added support for different error messages for the following cases:
-
- if a user with unsufficient permissions trys to select a database
- PEAR::DB previously threw a "no database selected" error instead
- of a more proper "insufficient permissions". This is fixed now.
-
- if a user selects a nonexistant database PEAR::DB threw a
- "no database selected" error instead of "no such database".
- This is fixed as well.
-
- I added two new constants to DB.php and a simple case construct to
- DB/mysql.php which can be easily extended to achive the above. I
- hope this is ok.
- Thanks to Till Gerken for mentioning this.
Sean Bright [Sun, 10 Feb 2002 23:12:57 +0000 (23:12 +0000)]
Fix for bugs #10133 and #15454.
Bug #15454 results from a bug in GMP. If you pass in a string '0xABCD' and
specify a base of 0, GMP figures out that it is hex and skips over the 0x
characters. If you specify base 16, then it doesn't skip those chars.
This was confirmed with the following test program:
#include <stdio.h>
#include <gmp.h>
int main()
{
char *str_one, *str_two;
mpz_t num_one, num_two;
We now take anything that starts with 0[xX] as hexidecimal and anything
that starts 0[bB] as binary (this is what GMP does internally). We also
no longer force the base to 10 or 16, but instead let GMP decide what the
best base is, be it hex, dec, or octal.
Stig Venaas [Sun, 10 Feb 2002 12:35:29 +0000 (12:35 +0000)]
Added php_sockaddr_size() in network.c (and the header file). This is used
in ftp.c to make sure connect() and bind() is called with size argument
which is exactly the size of the relevant sockaddr_xx structure
- got rid of unneded calls to OCIAttrGet when reexecuting the same query
- only invalidate the define list after all rows from a REFCORSOR are read,
"normal" corsors will now remember their column defines. this means that
ocigetcolumn[name|type|..] will from now on work even after the result set
has been read.
Mega-commit: Enter the new object model
Note: only standard Zend objects are working now. This is definitely going to
break custom objects like COM, Java, etc. - this will be fixed later.
Also, this may break other things that access objects' internals directly.
Yasuo Ohgaki [Thu, 7 Feb 2002 02:50:28 +0000 (02:50 +0000)]
Legacy code removed.
This line incorrectly removes buffer.
This line was correct only when ouput.c does not support
nested output buffers. Fixed bug #15178
Sorry guys, PHP 4.0.6's ZEND_MODULE_API_NO is whacked, it has an extra
zero, thus ZEND_MODULE_API_NO >= xxxx, will not work for about 18000 years.
Added better checking, and cleaned up some of the #ifdef you seem to love
so much.
removed the new-style parameter parser code for bc *and* readability
reasons, changed the remaining #ifdefs to check the api version
directly instead of using the not really related OLD_ZEND_PARAM macro
Andi Gutmans [Mon, 4 Feb 2002 20:44:24 +0000 (20:44 +0000)]
- This small patch should also take care of allowing unseting of $this->foo
- and static members. The unset() opcode was luckily already suitable for
- object overloading.
Andi Gutmans [Mon, 4 Feb 2002 19:29:56 +0000 (19:29 +0000)]
- Fix problem with the objects_destructor called during shutdown. It was
- freeing objects from id 0 instead of id 1. id 0 is not used.
- Change isset/empty opcodes to support static members and the new way of
- doing $this->foobar. Also the opcodes operate now on the hash table
- combined with the variable names so that they can be overloaded by the
- soon to be added overloading patch.
Yasuo Ohgaki [Sun, 3 Feb 2002 05:40:19 +0000 (05:40 +0000)]
Revert last commit. Last patch has problem for the 1st request.
# I also found what's wrong in mod_mm.c :)
# I'll fix it later since don't have much time now.
Jon Parise [Sat, 2 Feb 2002 06:21:58 +0000 (06:21 +0000)]
Revert revision 1.294.
This commit broke things in interesting ways under FreeBSD. By adding these
default header files to every header check, a number of subsequent checks
failed (due to unsatisfied header file dependencies). This occured because
<netinet/in.h>, for example, requires <sys/types.h>. In other words, these
default includes are not autonomous and don't make workable defaults.