summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Fischer <mfischer@php.net>2002-05-14 20:43:48 +0000
committerMarkus Fischer <mfischer@php.net>2002-05-14 20:43:48 +0000
commit9b86cff931f14389117b7165fb83c854036d60ef (patch)
treee563544701241ac427fece6266814a854d19ec0f
parent7a0866ff9080fa89cb0dc33aa5a6fdea7df89c33 (diff)
downloadphp-git-9b86cff931f14389117b7165fb83c854036d60ef.tar.gz
- Adjust for improved error messages from win32/sendmail.c
-rw-r--r--ext/standard/mail.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/ext/standard/mail.c b/ext/standard/mail.c
index 8b18aed1a5..4aae220074 100644
--- a/ext/standard/mail.c
+++ b/ext/standard/mail.c
@@ -112,6 +112,7 @@ PHPAPI int php_mail(char *to, char *subject, char *message, char *headers, char
{
#ifdef PHP_WIN32
int tsm_err;
+ char *tsm_errmsg = NULL;
#endif
FILE *sendmail;
int ret;
@@ -121,8 +122,13 @@ PHPAPI int php_mail(char *to, char *subject, char *message, char *headers, char
if (!sendmail_path) {
#ifdef PHP_WIN32
/* handle old style win smtp sending */
- if (TSendMail(INI_STR("SMTP"), &tsm_err, headers, subject, to, message) != SUCCESS){
- php_error(E_WARNING, "%s() %s", get_active_function_name(TSRMLS_C), GetSMErrorText(tsm_err));
+ if (TSendMail(INI_STR("SMTP"), &tsm_err, &tsm_errmsg, headers, subject, to, message) == FAILURE) {
+ if (tsm_errmsg) {
+ php_error(E_WARNING, "%s() %s", get_active_function_name(TSRMLS_C), tsm_errmsg);
+ efree(tsm_errmsg);
+ } else {
+ php_error(E_WARNING, "%s() %s", get_active_function_name(TSRMLS_C), GetSMErrorText(tsm_err));
+ }
return 0;
}
return 1;