Commit 3712cc3bddeec939f1a083e24bc199c9c5b35b0c
1 parent
a7744e3e
Exists in
master
and in
5 other branches
Iniciando implementação de excessões na extensão php
Showing
2 changed files
with
27 additions
and
17 deletions
Show diff stats
po/pt_BR.po
@@ -5,7 +5,7 @@ msgid "" | @@ -5,7 +5,7 @@ msgid "" | ||
5 | msgstr "" | 5 | msgstr "" |
6 | "Project-Id-Version: pw3270 5.0\n" | 6 | "Project-Id-Version: pw3270 5.0\n" |
7 | "Report-Msgid-Bugs-To: \n" | 7 | "Report-Msgid-Bugs-To: \n" |
8 | -"POT-Creation-Date: 2014-04-15 15:09-0300\n" | 8 | +"POT-Creation-Date: 2014-04-15 15:34-0300\n" |
9 | "PO-Revision-Date: 2014-02-17 08:05-0300\n" | 9 | "PO-Revision-Date: 2014-02-17 08:05-0300\n" |
10 | "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n" | 10 | "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n" |
11 | "Language-Team: Portugues <>\n" | 11 | "Language-Team: Portugues <>\n" |
src/php/init.cc
@@ -32,6 +32,7 @@ | @@ -32,6 +32,7 @@ | ||
32 | */ | 32 | */ |
33 | 33 | ||
34 | #include "php3270.h" | 34 | #include "php3270.h" |
35 | + #include <Zend/zend_exceptions.h> | ||
35 | 36 | ||
36 | /*--[ Implement ]--------------------------------------------------------------------------------------------------*/ | 37 | /*--[ Implement ]--------------------------------------------------------------------------------------------------*/ |
37 | 38 | ||
@@ -51,25 +52,34 @@ PHP_METHOD(tn3270, __construct) | @@ -51,25 +52,34 @@ PHP_METHOD(tn3270, __construct) | ||
51 | 52 | ||
52 | trace("szName=%d",szName); | 53 | trace("szName=%d",szName); |
53 | 54 | ||
54 | - if(szName) | 55 | + try |
55 | { | 56 | { |
56 | - char text[szName+1]; | ||
57 | - strncpy(text,name,szName); | ||
58 | - text[szName] = 0; | ||
59 | - trace("session_name=\"%s\"",text); | ||
60 | - obj->hSession = session::start(text); | ||
61 | - } | ||
62 | - else | ||
63 | - { | ||
64 | - obj->hSession = session::start(); | ||
65 | - } | ||
66 | 57 | ||
67 | - if(szURL) | 58 | + if(szName) |
59 | + { | ||
60 | + char text[szName+1]; | ||
61 | + strncpy(text,name,szName); | ||
62 | + text[szName] = 0; | ||
63 | + trace("session_name=\"%s\"",text); | ||
64 | + obj->hSession = session::start(text); | ||
65 | + } | ||
66 | + else | ||
67 | + { | ||
68 | + obj->hSession = session::start(); | ||
69 | + } | ||
70 | + | ||
71 | + if(szURL) | ||
72 | + { | ||
73 | + char text[szURL+1]; | ||
74 | + strncpy(text,url,szURL); | ||
75 | + text[szURL] = 0; | ||
76 | + obj->hSession->set_url(text); | ||
77 | + } | ||
78 | + | ||
79 | + } | ||
80 | + catch(std::exception &e) | ||
68 | { | 81 | { |
69 | - char text[szURL+1]; | ||
70 | - strncpy(text,url,szURL); | ||
71 | - text[szURL] = 0; | ||
72 | - obj->hSession->set_url(text); | 82 | + zend_throw_error_exception(zend_exception_get_default(), (char *) e.what(), 0, 0 TSRMLS_DC); |
73 | } | 83 | } |
74 | 84 | ||
75 | } | 85 | } |