Commit 1cc777fb53d89f39df89f54beb76790a6c35df9b
Committed by
GitHub
Exists in
master
and in
2 other branches
Merge pull request #29 from PerryWerneck/macos
Merging MacOS changes to development branch.
Showing
4 changed files
with
169 additions
and
119 deletions
Show diff stats
README.md
@@ -7,7 +7,6 @@ See more details at https://softwarepublico.gov.br/social/pw3270/ | @@ -7,7 +7,6 @@ See more details at https://softwarepublico.gov.br/social/pw3270/ | ||
7 | 7 | ||
8 | [](https://www.gnu.org/licenses/gpl-3.0) | 8 | [](https://www.gnu.org/licenses/gpl-3.0) |
9 |  | 9 |  |
10 | - | ||
11 |  | 10 |  |
12 | 11 | ||
13 | Installation repositories | 12 | Installation repositories |
@@ -142,6 +141,8 @@ Building for macOS | @@ -142,6 +141,8 @@ Building for macOS | ||
142 | Using homebrew | 141 | Using homebrew |
143 | -------------- | 142 | -------------- |
144 | 143 | ||
144 | +Install | ||
145 | + | ||
145 | 1. Install [homebrew](https://brew.sh/) | 146 | 1. Install [homebrew](https://brew.sh/) |
146 | 147 | ||
147 | 2. Install dependencies | 148 | 2. Install dependencies |
@@ -164,7 +165,7 @@ Using homebrew | @@ -164,7 +165,7 @@ Using homebrew | ||
164 | brew link lib3270 | 165 | brew link lib3270 |
165 | ``` | 166 | ``` |
166 | 167 | ||
167 | -To uninstall | 168 | +Uninstall |
168 | 169 | ||
169 | ```shell | 170 | ```shell |
170 | brew unlink lib3270 | 171 | brew unlink lib3270 |
locale/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: 2021-12-08 23:33-0300\n" | 8 | +"POT-Creation-Date: 2021-09-01 23:49-0300\n" |
9 | "PO-Revision-Date: 2021-09-01 23:53-0300\n" | 9 | "PO-Revision-Date: 2021-09-01 23:53-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: Português <perry.werneck@gmail.com>\n" | 11 | "Language-Team: Português <perry.werneck@gmail.com>\n" |
@@ -179,6 +179,10 @@ msgstr "Back space" | @@ -179,6 +179,10 @@ msgstr "Back space" | ||
179 | msgid "Backspaces the cursor until it hits the front of a word" | 179 | msgid "Backspaces the cursor until it hits the front of a word" |
180 | msgstr "Volta o cursor até que atinga o início de uma palavra" | 180 | msgstr "Volta o cursor até que atinga o início de uma palavra" |
181 | 181 | ||
182 | +#: src/core/windows/connect.c:123 | ||
183 | +msgid "Bad winsock version" | ||
184 | +msgstr "Versão winsock inválida" | ||
185 | + | ||
182 | #: src/core/toggles/table.c:257 | 186 | #: src/core/toggles/table.c:257 |
183 | msgid "Beep on errors" | 187 | msgid "Beep on errors" |
184 | msgstr "Emitir som nos erros" | 188 | msgstr "Emitir som nos erros" |
@@ -223,25 +227,37 @@ msgstr "Arquivo CMS não encontrado, transferência cancelada" | @@ -223,25 +227,37 @@ msgstr "Arquivo CMS não encontrado, transferência cancelada" | ||
223 | msgid "CRL signature failure" | 227 | msgid "CRL signature failure" |
224 | msgstr "Erro na assinatura CRL" | 228 | msgstr "Erro na assinatura CRL" |
225 | 229 | ||
226 | -#: src/core/toggles/init.c:83 src/core/linux/connect.c:334 | 230 | +#: src/core/toggles/init.c:83 src/core/windows/connect.c:372 |
227 | #, c-format | 231 | #, c-format |
228 | msgid "Can't %s network keep-alive" | 232 | msgid "Can't %s network keep-alive" |
229 | msgstr "Não foi possível %s opção \"keep-alive\"" | 233 | msgstr "Não foi possível %s opção \"keep-alive\"" |
230 | 234 | ||
231 | -#: src/core/linux/connect.c:215 src/core/linux/connect.c:269 | 235 | +#: src/core/windows/ldap.c:149 |
236 | +msgid "Can't bind to LDAP server" | ||
237 | +msgstr "Não foi possível conectar ao servidor LDAP" | ||
238 | + | ||
239 | +#: src/core/windows/connect.c:232 src/core/windows/connect.c:276 | ||
232 | #, c-format | 240 | #, c-format |
233 | msgid "Can't connect to %s:%s" | 241 | msgid "Can't connect to %s:%s" |
234 | msgstr "Não foi possível conectar a %s:%s" | 242 | msgstr "Não foi possível conectar a %s:%s" |
235 | 243 | ||
236 | -#: src/core/linux/connect.c:165 | 244 | +#: src/core/windows/http.c:110 |
245 | +msgid "Can't connect to HTTP server." | ||
246 | +msgstr "Não foi possível conectar ao servidor HTTP" | ||
247 | + | ||
248 | +#: src/core/windows/connect.c:197 | ||
237 | msgid "Can't connect to host" | 249 | msgid "Can't connect to host" |
238 | msgstr "Não foi possível conectar no host" | 250 | msgstr "Não foi possível conectar no host" |
239 | 251 | ||
252 | +#: src/core/windows/http.c:121 | ||
253 | +msgid "Can't create HTTP request." | ||
254 | +msgstr "Não foi possível criar requisição HTTP" | ||
255 | + | ||
240 | #: src/network_modules/openssl/start.c:71 | 256 | #: src/network_modules/openssl/start.c:71 |
241 | msgid "Can't decode CRL data" | 257 | msgid "Can't decode CRL data" |
242 | msgstr "Não foi possível decodificar dados do CRL" | 258 | msgstr "Não foi possível decodificar dados do CRL" |
243 | 259 | ||
244 | -#: src/core/linux/ldap.c:167 | 260 | +#: src/core/windows/ldap.c:204 |
245 | msgid "Can't decode certificate revocation list" | 261 | msgid "Can't decode certificate revocation list" |
246 | msgstr "Não foi possível decodificar a lista de certificados revogados" | 262 | msgstr "Não foi possível decodificar a lista de certificados revogados" |
247 | 263 | ||
@@ -253,26 +269,42 @@ msgstr "Não foi possível determinar o estado TLS/SSL" | @@ -253,26 +269,42 @@ msgstr "Não foi possível determinar o estado TLS/SSL" | ||
253 | msgid "Can't get file size" | 269 | msgid "Can't get file size" |
254 | msgstr "Não foi possível obter o tamanho do arquivo" | 270 | msgstr "Não foi possível obter o tamanho do arquivo" |
255 | 271 | ||
256 | -#: src/core/linux/curl.c:171 | ||
257 | -msgid "Can't initialize curl operation" | ||
258 | -msgstr "Erro ao inicializar operação CURL" | 272 | +#: src/core/windows/ldap.c:133 |
273 | +msgid "Can't initialize LDAP" | ||
274 | +msgstr "Erro ao inicializar LDAP" | ||
259 | 275 | ||
260 | #: src/network_modules/openssl/context.c:164 | 276 | #: src/network_modules/openssl/context.c:164 |
261 | msgid "Can't initialize the TLS/SSL context." | 277 | msgid "Can't initialize the TLS/SSL context." |
262 | msgstr "Erro ao inicializar contexto TLS/SSL" | 278 | msgstr "Erro ao inicializar contexto TLS/SSL" |
263 | 279 | ||
264 | -#: src/core/session.c:205 | 280 | +#: src/core/session.c:198 |
265 | msgid "Can't load" | 281 | msgid "Can't load" |
266 | msgstr "Não foi possível carregar" | 282 | msgstr "Não foi possível carregar" |
267 | 283 | ||
268 | -#: src/core/session.c:193 | 284 | +#: src/core/windows/http.c:99 |
285 | +msgid "Can't open HTTP session" | ||
286 | +msgstr "Não foi possível abrir sessão HTTP" | ||
287 | + | ||
288 | +#: src/core/session.c:186 | ||
269 | msgid "Can't print" | 289 | msgid "Can't print" |
270 | msgstr "Não é possível imprimir" | 290 | msgstr "Não é possível imprimir" |
271 | 291 | ||
272 | -#: src/core/session.c:199 | 292 | +#: src/core/windows/http.c:173 |
293 | +msgid "Can't read HTTP response size." | ||
294 | +msgstr "Não posso obter tamanho da resposta HTTP" | ||
295 | + | ||
296 | +#: src/core/session.c:192 | ||
273 | msgid "Can't save" | 297 | msgid "Can't save" |
274 | msgstr "Não é possível salvar" | 298 | msgstr "Não é possível salvar" |
275 | 299 | ||
300 | +#: src/core/windows/http.c:134 | ||
301 | +msgid "Can't send HTTP request." | ||
302 | +msgstr "Não posso enviar requisição HTTP" | ||
303 | + | ||
304 | +#: src/core/windows/ldap.c:141 | ||
305 | +msgid "Can't set LDAP protocol version" | ||
306 | +msgstr "Não é possível setar a versão do protocolo LDAP" | ||
307 | + | ||
276 | #: src/network_modules/tools.c:190 | 308 | #: src/network_modules/tools.c:190 |
277 | msgid "Can't set socket to blocking mode." | 309 | msgid "Can't set socket to blocking mode." |
278 | msgstr "Não foi possível mudar o socket para o modo blocante." | 310 | msgstr "Não foi possível mudar o socket para o modo blocante." |
@@ -285,6 +317,10 @@ msgstr "Não foi possível setar o socket para o modo não blocante." | @@ -285,6 +317,10 @@ msgstr "Não foi possível setar o socket para o modo não blocante." | ||
285 | msgid "Can't start file transfer." | 317 | msgid "Can't start file transfer." |
286 | msgstr "Não foi possível iniciar transferência de arquivo." | 318 | msgstr "Não foi possível iniciar transferência de arquivo." |
287 | 319 | ||
320 | +#: src/core/windows/connect.c:124 | ||
321 | +msgid "Can't use this system winsock" | ||
322 | +msgstr "Não posso usar a winsock do sistema" | ||
323 | + | ||
288 | #: src/core/ft/ft.c:151 | 324 | #: src/core/ft/ft.c:151 |
289 | msgid "Cancelled by user" | 325 | msgid "Cancelled by user" |
290 | msgstr "Cancelado pelo usuário" | 326 | msgstr "Cancelado pelo usuário" |
@@ -371,8 +407,8 @@ msgstr "Connected initial" | @@ -371,8 +407,8 @@ msgstr "Connected initial" | ||
371 | msgid "Connecting" | 407 | msgid "Connecting" |
372 | msgstr "Conectando" | 408 | msgstr "Conectando" |
373 | 409 | ||
374 | -#: src/core/linux/connect.c:230 src/core/linux/connect.c:321 | ||
375 | -#: src/core/linux/connect.c:338 src/network_modules/tools.c:160 | 410 | +#: src/core/windows/connect.c:358 src/core/windows/connect.c:376 |
411 | +#: src/network_modules/tools.c:160 | ||
376 | msgid "Connection error" | 412 | msgid "Connection error" |
377 | msgstr "Erro de conexão" | 413 | msgstr "Erro de conexão" |
378 | 414 | ||
@@ -476,8 +512,8 @@ msgstr "Tipo de dispositivo rejeitado" | @@ -476,8 +512,8 @@ msgstr "Tipo de dispositivo rejeitado" | ||
476 | msgid "Disconnect from host" | 512 | msgid "Disconnect from host" |
477 | msgstr "Desconecta do servidor" | 513 | msgstr "Desconecta do servidor" |
478 | 514 | ||
479 | -#: src/core/ft/ft.c:244 src/network_modules/openssl/main.c:100 | ||
480 | -#: src/network_modules/openssl/main.c:148 | 515 | +#: src/core/ft/ft.c:244 src/network_modules/openssl/main.c:99 |
516 | +#: src/network_modules/openssl/main.c:147 | ||
481 | msgid "Disconnected from host." | 517 | msgid "Disconnected from host." |
482 | msgstr "Desconectado do servidor." | 518 | msgstr "Desconectado do servidor." |
483 | 519 | ||
@@ -501,6 +537,10 @@ msgstr "Dup" | @@ -501,6 +537,10 @@ msgstr "Dup" | ||
501 | msgid "EOR received when not in 3270 mode, ignored." | 537 | msgid "EOR received when not in 3270 mode, ignored." |
502 | msgstr "EOR recebido fora do modo 3270, ignorado." | 538 | msgstr "EOR recebido fora do modo 3270, ignorado." |
503 | 539 | ||
540 | +#: src/core/windows/http.c:157 | ||
541 | +msgid "Empty response from HTTP server." | ||
542 | +msgstr "Recebi resposta vazia do servidor HTTP" | ||
543 | + | ||
504 | #: src/core/toggles/table.c:298 | 544 | #: src/core/toggles/table.c:298 |
505 | msgid "Enable network in/out trace" | 545 | msgid "Enable network in/out trace" |
506 | msgstr "Habilitar trace de entrada/saída de rede" | 546 | msgstr "Habilitar trace de entrada/saída de rede" |
@@ -571,10 +611,14 @@ msgstr "Erro na transferência do arquivo, transferência cancelada" | @@ -571,10 +611,14 @@ msgstr "Erro na transferência do arquivo, transferência cancelada" | ||
571 | msgid "Error reading file from host: file transfer canceled" | 611 | msgid "Error reading file from host: file transfer canceled" |
572 | msgstr "Erro ao ler arquivo do host: Transferência cancelada" | 612 | msgstr "Erro ao ler arquivo do host: Transferência cancelada" |
573 | 613 | ||
574 | -#: src/network_modules/openssl/main.c:170 | 614 | +#: src/network_modules/openssl/main.c:169 |
575 | msgid "Error reading from host" | 615 | msgid "Error reading from host" |
576 | msgstr "Erro lendo do servidor" | 616 | msgstr "Erro lendo do servidor" |
577 | 617 | ||
618 | +#: src/core/windows/http.c:145 | ||
619 | +msgid "Error receiving HTTP response." | ||
620 | +msgstr "Erro recebendo resposta HTTP." | ||
621 | + | ||
578 | #: src/network_modules/tools.c:66 src/network_modules/tools.c:82 | 622 | #: src/network_modules/tools.c:66 src/network_modules/tools.c:82 |
579 | msgid "Error receiving data from host" | 623 | msgid "Error receiving data from host" |
580 | msgstr "Erro recebendo dados do servidor" | 624 | msgstr "Erro recebendo dados do servidor" |
@@ -587,7 +631,7 @@ msgstr "Erro ao ler ou gravar no host: Transferência cancelada" | @@ -587,7 +631,7 @@ msgstr "Erro ao ler ou gravar no host: Transferência cancelada" | ||
587 | msgid "Error writing file to host: file transfer canceled" | 631 | msgid "Error writing file to host: file transfer canceled" |
588 | msgstr "Erro ao gravar arquivo no host, transferência cancelada" | 632 | msgstr "Erro ao gravar arquivo no host, transferência cancelada" |
589 | 633 | ||
590 | -#: src/network_modules/openssl/main.c:123 | 634 | +#: src/network_modules/openssl/main.c:122 |
591 | msgid "Error writing to host." | 635 | msgid "Error writing to host." |
592 | msgstr "Erro enviando para o servidor" | 636 | msgstr "Erro enviando para o servidor" |
593 | 637 | ||
@@ -852,14 +896,12 @@ msgstr "Teclado está bloqueado" | @@ -852,14 +896,12 @@ msgstr "Teclado está bloqueado" | ||
852 | msgid "Keyboard lock status" | 896 | msgid "Keyboard lock status" |
853 | msgstr "Estado de bloqueio do teclado" | 897 | msgstr "Estado de bloqueio do teclado" |
854 | 898 | ||
855 | -#: src/core/linux/ldap.c:147 | ||
856 | -#, fuzzy | ||
857 | -msgid "LDAP search did not produce any attributes." | 899 | +#: src/core/windows/ldap.c:179 |
900 | +msgid "LDAP Search did not produce any attributes." | ||
858 | msgstr "Pesquisa LDAP não produziu atributos." | 901 | msgstr "Pesquisa LDAP não produziu atributos." |
859 | 902 | ||
860 | -#: src/core/linux/ldap.c:157 | ||
861 | -#, fuzzy | ||
862 | -msgid "LDAP search did not produce any values." | 903 | +#: src/core/windows/ldap.c:186 |
904 | +msgid "LDAPSearch did not produce any values." | ||
863 | msgstr "Pesquisa LDAP não produziu valores." | 905 | msgstr "Pesquisa LDAP não produziu valores." |
864 | 906 | ||
865 | #: src/core/properties/signed.c:70 | 907 | #: src/core/properties/signed.c:70 |
@@ -947,8 +989,8 @@ msgstr "Move para o próximo campo desprotegido" | @@ -947,8 +989,8 @@ msgstr "Move para o próximo campo desprotegido" | ||
947 | msgid "Move to the previous unprotected field on screen" | 989 | msgid "Move to the previous unprotected field on screen" |
948 | msgstr "Move para o campo desprotegido anterior" | 990 | msgstr "Move para o campo desprotegido anterior" |
949 | 991 | ||
950 | -#: src/core/telnet.c:304 src/core/linux/event_dispatcher.c:130 | ||
951 | -#: src/core/linux/connect.c:200 | 992 | +#: src/core/telnet.c:304 src/core/windows/event_dispatcher.c:135 |
993 | +#: src/core/windows/connect.c:223 | ||
952 | msgid "Network error" | 994 | msgid "Network error" |
953 | msgstr "Erro de rede" | 995 | msgstr "Erro de rede" |
954 | 996 | ||
@@ -976,7 +1018,7 @@ msgstr "Sem suporte LDAP" | @@ -976,7 +1018,7 @@ msgstr "Sem suporte LDAP" | ||
976 | msgid "No TLS/SSL support on this session" | 1018 | msgid "No TLS/SSL support on this session" |
977 | msgstr "Sem suporte TLS/SSL nessa sessão" | 1019 | msgstr "Sem suporte TLS/SSL nessa sessão" |
978 | 1020 | ||
979 | -#: src/core/linux/download.c:55 | 1021 | +#: src/core/windows/download.c:62 |
980 | msgid "No handler for URL scheme." | 1022 | msgid "No handler for URL scheme." |
981 | msgstr "Nenhum manipulador para o esquema de URL" | 1023 | msgstr "Nenhum manipulador para o esquema de URL" |
982 | 1024 | ||
@@ -1004,6 +1046,10 @@ msgstr "Diferente de zero se o host é AS400" | @@ -1004,6 +1046,10 @@ msgstr "Diferente de zero se o host é AS400" | ||
1004 | msgid "Non zero if the host is TSO." | 1046 | msgid "Non zero if the host is TSO." |
1005 | msgstr "Diferente de zero se o host é TSO" | 1047 | msgstr "Diferente de zero se o host é TSO" |
1006 | 1048 | ||
1049 | +#: src/core/windows/connect.c:307 | ||
1050 | +msgid "Not connected to host" | ||
1051 | +msgstr "Sem conexão com servidor" | ||
1052 | + | ||
1007 | #: src/core/ft/ft.c:626 | 1053 | #: src/core/ft/ft.c:626 |
1008 | msgid "Not in 3270 mode, transfer cancelled" | 1054 | msgid "Not in 3270 mode, transfer cancelled" |
1009 | msgstr "Não está no modo 3270, transferência cancelada" | 1055 | msgstr "Não está no modo 3270, transferência cancelada" |
@@ -1267,7 +1313,7 @@ msgstr "Seleciona a direita" | @@ -1267,7 +1313,7 @@ msgstr "Seleciona a direita" | ||
1267 | msgid "Select word" | 1313 | msgid "Select word" |
1268 | msgstr "Seleciona palavra" | 1314 | msgstr "Seleciona palavra" |
1269 | 1315 | ||
1270 | -#: src/core/linux/event_dispatcher.c:131 | 1316 | +#: src/core/windows/event_dispatcher.c:136 |
1271 | msgid "Select() failed when processing for events." | 1317 | msgid "Select() failed when processing for events." |
1272 | msgstr "Select() falhou ao processar eventos." | 1318 | msgstr "Select() falhou ao processar eventos." |
1273 | 1319 | ||
@@ -1454,18 +1500,13 @@ msgstr "" | @@ -1454,18 +1500,13 @@ msgstr "" | ||
1454 | "A lista de revogação de certificados (CRL) de um certificado não pôde ser " | 1500 | "A lista de revogação de certificados (CRL) de um certificado não pôde ser " |
1455 | "encontrada." | 1501 | "encontrada." |
1456 | 1502 | ||
1457 | -#: src/network_modules/openssl/main.c:124 | ||
1458 | -#: src/network_modules/openssl/main.c:171 | 1503 | +#: src/network_modules/openssl/main.c:123 |
1504 | +#: src/network_modules/openssl/main.c:170 | ||
1459 | #, c-format | 1505 | #, c-format |
1460 | msgid "The SSL error message was %s" | 1506 | msgid "The SSL error message was %s" |
1461 | msgstr "A mensagem de erro SSL foi \"%s\"" | 1507 | msgstr "A mensagem de erro SSL foi \"%s\"" |
1462 | 1508 | ||
1463 | -#: src/core/linux/connect.c:191 | ||
1464 | -#, fuzzy, c-format | ||
1465 | -msgid "The System error was '%s' (rc=%d)" | ||
1466 | -msgstr "O erro do sistema foi \"%s\" (rc=%d)" | ||
1467 | - | ||
1468 | -#: src/core/linux/ldap.c:82 src/core/linux/ldap.c:91 | 1509 | +#: src/core/windows/ldap.c:101 src/core/windows/ldap.c:110 |
1469 | msgid "The URL argument should be in the format ldap://[HOST]/[DN]?attribute" | 1510 | msgid "The URL argument should be in the format ldap://[HOST]/[DN]?attribute" |
1470 | msgstr "A URL deve ser no formato ldap://[HOST]/[DN]?attribute" | 1511 | msgstr "A URL deve ser no formato ldap://[HOST]/[DN]?attribute" |
1471 | 1512 | ||
@@ -1682,8 +1723,8 @@ msgstr "" | @@ -1682,8 +1723,8 @@ msgstr "" | ||
1682 | "O Certificado raiz não está marcado como confiável para os fins " | 1723 | "O Certificado raiz não está marcado como confiável para os fins " |
1683 | "especificados." | 1724 | "especificados." |
1684 | 1725 | ||
1685 | -#: src/network_modules/openssl/main.c:102 | ||
1686 | -#: src/network_modules/openssl/main.c:150 | 1726 | +#: src/network_modules/openssl/main.c:101 |
1727 | +#: src/network_modules/openssl/main.c:149 | ||
1687 | msgid "The secure connection has been closed cleanly." | 1728 | msgid "The secure connection has been closed cleanly." |
1688 | msgstr "A conexão segura foi fechada corretamente" | 1729 | msgstr "A conexão segura foi fechada corretamente" |
1689 | 1730 | ||
@@ -1716,12 +1757,24 @@ msgstr "O erro do sistema operacional foi %d" | @@ -1716,12 +1757,24 @@ msgstr "O erro do sistema operacional foi %d" | ||
1716 | msgid "The system error code was %d (%s)" | 1757 | msgid "The system error code was %d (%s)" |
1717 | msgstr "O erro do sistema operacional foi \"%d\" (%s)" | 1758 | msgstr "O erro do sistema operacional foi \"%d\" (%s)" |
1718 | 1759 | ||
1719 | -#: src/core/linux/connect.c:222 src/core/linux/connect.c:282 | 1760 | +#: src/core/windows/connect.c:239 |
1761 | +#, c-format | ||
1762 | +msgid "The system error was \"%s\"" | ||
1763 | +msgstr "O erro do sistema operacional foi \"%s\"" | ||
1764 | + | ||
1765 | +#: src/core/windows/connect.c:298 src/core/windows/connect.c:306 | ||
1766 | +#: src/core/windows/connect.c:314 src/core/windows/connect.c:324 | ||
1720 | #, c-format | 1767 | #, c-format |
1721 | msgid "The system error was \"%s\" (rc=%d)" | 1768 | msgid "The system error was \"%s\" (rc=%d)" |
1722 | msgstr "O erro do sistema operacional foi \"%s\" (rc=%d)" | 1769 | msgstr "O erro do sistema operacional foi \"%s\" (rc=%d)" |
1723 | 1770 | ||
1724 | -#: src/core/util.c:266 | 1771 | +#: src/core/windows/connect.c:225 src/core/windows/connect.c:360 |
1772 | +#: src/core/windows/connect.c:378 | ||
1773 | +#, c-format | ||
1774 | +msgid "The system error was %s" | ||
1775 | +msgstr "O erro do sistema operacional foi \"%s\"" | ||
1776 | + | ||
1777 | +#: src/core/util.c:260 | ||
1725 | #, c-format | 1778 | #, c-format |
1726 | msgid "The system error was '%s' (rc=%d)" | 1779 | msgid "The system error was '%s' (rc=%d)" |
1727 | msgstr "O erro do sistema foi \"%s\" (rc=%d)" | 1780 | msgstr "O erro do sistema foi \"%s\" (rc=%d)" |
@@ -1752,6 +1805,10 @@ msgstr "Este é um erro no programa do host." | @@ -1752,6 +1805,10 @@ msgstr "Este é um erro no programa do host." | ||
1752 | msgid "Time for auto-reconnect" | 1805 | msgid "Time for auto-reconnect" |
1753 | msgstr "Tempo para reconexão automática" | 1806 | msgstr "Tempo para reconexão automática" |
1754 | 1807 | ||
1808 | +#: src/core/windows/connect.c:299 | ||
1809 | +msgid "Timeout conneting to host" | ||
1810 | +msgstr "Timeout ao conectar com o host" | ||
1811 | + | ||
1755 | #: src/core/toggles/table.c:93 src/core/toggles/table.c:94 | 1812 | #: src/core/toggles/table.c:93 src/core/toggles/table.c:94 |
1756 | msgid "Trace Data Stream" | 1813 | msgid "Trace Data Stream" |
1757 | msgstr "Trace Data Stream" | 1814 | msgstr "Trace Data Stream" |
@@ -1817,7 +1874,7 @@ msgstr "Transferência falhou" | @@ -1817,7 +1874,7 @@ msgstr "Transferência falhou" | ||
1817 | msgid "Transmission error" | 1874 | msgid "Transmission error" |
1818 | msgstr "Erro de transmissão" | 1875 | msgstr "Erro de transmissão" |
1819 | 1876 | ||
1820 | -#: src/core/linux/connect.c:166 | 1877 | +#: src/core/windows/connect.c:198 |
1821 | msgid "Try again" | 1878 | msgid "Try again" |
1822 | msgstr "Tentar novamente" | 1879 | msgstr "Tentar novamente" |
1823 | 1880 | ||
@@ -1846,7 +1903,7 @@ msgstr "Incapaz de decifrar a assinatura do certificado" | @@ -1846,7 +1903,7 @@ msgstr "Incapaz de decifrar a assinatura do certificado" | ||
1846 | msgid "Unable to get certificate CRL." | 1903 | msgid "Unable to get certificate CRL." |
1847 | msgstr "Incapaz de obter o CRL de um certificado." | 1904 | msgstr "Incapaz de obter o CRL de um certificado." |
1848 | 1905 | ||
1849 | -#: src/core/linux/connect.c:201 | 1906 | +#: src/core/windows/connect.c:224 |
1850 | msgid "Unable to get connection state." | 1907 | msgid "Unable to get connection state." |
1851 | msgstr "Não foi possível obter o estado da conexão." | 1908 | msgstr "Não foi possível obter o estado da conexão." |
1852 | 1909 | ||
@@ -1858,7 +1915,7 @@ msgstr "Não foi possível obter emissor do certificado" | @@ -1858,7 +1915,7 @@ msgstr "Não foi possível obter emissor do certificado" | ||
1858 | msgid "Unable to get local issuer certificate" | 1915 | msgid "Unable to get local issuer certificate" |
1859 | msgstr "Unable to get local issuer certificate" | 1916 | msgstr "Unable to get local issuer certificate" |
1860 | 1917 | ||
1861 | -#: src/core/session.c:205 | 1918 | +#: src/core/session.c:198 |
1862 | msgid "Unable to load from file" | 1919 | msgid "Unable to load from file" |
1863 | msgstr "Não foi possível ler do arquivo" | 1920 | msgstr "Não foi possível ler do arquivo" |
1864 | 1921 | ||
@@ -1870,11 +1927,11 @@ msgstr "Incapaz de negociar uma conexão segura com o host" | @@ -1870,11 +1927,11 @@ msgstr "Incapaz de negociar uma conexão segura com o host" | ||
1870 | msgid "Unable to paste text" | 1927 | msgid "Unable to paste text" |
1871 | msgstr "Incapaz de colar texto" | 1928 | msgstr "Incapaz de colar texto" |
1872 | 1929 | ||
1873 | -#: src/core/session.c:193 | 1930 | +#: src/core/session.c:186 |
1874 | msgid "Unable to print" | 1931 | msgid "Unable to print" |
1875 | msgstr "Incapaz de imprimir" | 1932 | msgstr "Incapaz de imprimir" |
1876 | 1933 | ||
1877 | -#: src/core/session.c:199 | 1934 | +#: src/core/session.c:192 |
1878 | msgid "Unable to save" | 1935 | msgid "Unable to save" |
1879 | msgstr "Incapaz de salvar" | 1936 | msgstr "Incapaz de salvar" |
1880 | 1937 | ||
@@ -1966,6 +2023,10 @@ msgstr "Usar teclas +/- para navegar por campos" | @@ -1966,6 +2023,10 @@ msgstr "Usar teclas +/- para navegar por campos" | ||
1966 | msgid "Use the keys +/- from keypad to select editable fields" | 2023 | msgid "Use the keys +/- from keypad to select editable fields" |
1967 | msgstr "Use the keys +/- from keypad to select editable fields" | 2024 | msgstr "Use the keys +/- from keypad to select editable fields" |
1968 | 2025 | ||
2026 | +#: src/core/windows/connect.c:111 | ||
2027 | +msgid "WSAStartup failed" | ||
2028 | +msgstr "WSAStartup falhou" | ||
2029 | + | ||
1969 | #: src/core/ft/ft.c:487 | 2030 | #: src/core/ft/ft.c:487 |
1970 | msgid "Waiting for GET response" | 2031 | msgid "Waiting for GET response" |
1971 | msgstr "Aguardando resposta do pedido de download" | 2032 | msgstr "Aguardando resposta do pedido de download" |
@@ -1978,6 +2039,11 @@ msgstr "Aguardando resposta do pedido de upload" | @@ -1978,6 +2039,11 @@ msgstr "Aguardando resposta do pedido de upload" | ||
1978 | msgid "Warning" | 2039 | msgid "Warning" |
1979 | msgstr "Alerta" | 2040 | msgstr "Alerta" |
1980 | 2041 | ||
2042 | +#: src/core/windows/util.c:126 src/core/windows/util.c:169 | ||
2043 | +#, c-format | ||
2044 | +msgid "Windows error %d" | ||
2045 | +msgstr "Erro windows foi %d" | ||
2046 | + | ||
1981 | #: src/core/toggles/table.c:103 src/core/toggles/table.c:104 | 2047 | #: src/core/toggles/table.c:103 src/core/toggles/table.c:104 |
1982 | msgid "Wrap around" | 2048 | msgid "Wrap around" |
1983 | msgstr "Wrap around" | 2049 | msgstr "Wrap around" |
@@ -2065,15 +2131,15 @@ msgstr "_Desconectar" | @@ -2065,15 +2131,15 @@ msgstr "_Desconectar" | ||
2065 | msgid "_Reconnect" | 2131 | msgid "_Reconnect" |
2066 | msgstr "_Reconectar" | 2132 | msgstr "_Reconectar" |
2067 | 2133 | ||
2068 | -#: src/core/linux/connect.c:233 src/core/linux/connect.c:302 | 2134 | +#: src/core/windows/connect.c:340 |
2069 | msgid "_Retry" | 2135 | msgid "_Retry" |
2070 | msgstr "_Repetir" | 2136 | msgstr "_Repetir" |
2071 | 2137 | ||
2072 | -#: src/core/toggles/init.c:83 src/core/linux/connect.c:334 | 2138 | +#: src/core/toggles/init.c:83 src/core/windows/connect.c:372 |
2073 | msgid "disable" | 2139 | msgid "disable" |
2074 | msgstr "desabilitar" | 2140 | msgstr "desabilitar" |
2075 | 2141 | ||
2076 | -#: src/core/toggles/init.c:83 src/core/linux/connect.c:334 | 2142 | +#: src/core/toggles/init.c:83 src/core/windows/connect.c:372 |
2077 | msgid "enable" | 2143 | msgid "enable" |
2078 | msgstr "habilitar" | 2144 | msgstr "habilitar" |
2079 | 2145 | ||
@@ -2097,7 +2163,7 @@ msgstr "Versão da lib3270" | @@ -2097,7 +2163,7 @@ msgstr "Versão da lib3270" | ||
2097 | msgid "numeric lock" | 2163 | msgid "numeric lock" |
2098 | msgstr "numeric lock" | 2164 | msgstr "numeric lock" |
2099 | 2165 | ||
2100 | -#: src/core/linux/connect.c:322 | 2166 | +#: src/core/windows/connect.c:359 |
2101 | msgid "setsockopt(SO_OOBINLINE) has failed" | 2167 | msgid "setsockopt(SO_OOBINLINE) has failed" |
2102 | msgstr "setsockopt(SO_OOBINLINE) has failed" | 2168 | msgstr "setsockopt(SO_OOBINLINE) has failed" |
2103 | 2169 | ||
@@ -2320,9 +2386,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -2320,9 +2386,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
2320 | #~ msgid "Background" | 2386 | #~ msgid "Background" |
2321 | #~ msgstr "Fundo" | 2387 | #~ msgstr "Fundo" |
2322 | 2388 | ||
2323 | -#~ msgid "Bad winsock version" | ||
2324 | -#~ msgstr "Versão winsock inválida" | ||
2325 | - | ||
2326 | #~ msgid "Black" | 2389 | #~ msgid "Black" |
2327 | #~ msgstr "Preto" | 2390 | #~ msgstr "Preto" |
2328 | 2391 | ||
@@ -2365,18 +2428,9 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -2365,18 +2428,9 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
2365 | #~ msgid "Can't add activity" | 2428 | #~ msgid "Can't add activity" |
2366 | #~ msgstr "Não é possível adicionar atividade" | 2429 | #~ msgstr "Não é possível adicionar atividade" |
2367 | 2430 | ||
2368 | -#~ msgid "Can't bind to LDAP server" | ||
2369 | -#~ msgstr "Não foi possível conectar ao servidor LDAP" | ||
2370 | - | ||
2371 | -#~ msgid "Can't connect to HTTP server." | ||
2372 | -#~ msgstr "Não foi possível conectar ao servidor HTTP" | ||
2373 | - | ||
2374 | #~ msgid "Can't convert line %lu from %s to %s" | 2431 | #~ msgid "Can't convert line %lu from %s to %s" |
2375 | #~ msgstr "Não foi possível converter a linha %lu de %s para %s" | 2432 | #~ msgstr "Não foi possível converter a linha %lu de %s para %s" |
2376 | 2433 | ||
2377 | -#~ msgid "Can't create HTTP request." | ||
2378 | -#~ msgstr "Não foi possível criar requisição HTTP" | ||
2379 | - | ||
2380 | #~ msgid "Can't cut rectangular regions" | 2434 | #~ msgid "Can't cut rectangular regions" |
2381 | #~ msgstr "Recortar não permitido em seleção retangular" | 2435 | #~ msgstr "Recortar não permitido em seleção retangular" |
2382 | 2436 | ||
@@ -2402,8 +2456,8 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -2402,8 +2456,8 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
2402 | #~ msgid "Can't get screen contents" | 2456 | #~ msgid "Can't get screen contents" |
2403 | #~ msgstr "Não foi possível obter o conteúdo da tela" | 2457 | #~ msgstr "Não foi possível obter o conteúdo da tela" |
2404 | 2458 | ||
2405 | -#~ msgid "Can't initialize LDAP" | ||
2406 | -#~ msgstr "Erro ao inicializar LDAP" | 2459 | +#~ msgid "Can't initialize curl operation" |
2460 | +#~ msgstr "Erro ao inicializar operação CURL" | ||
2407 | 2461 | ||
2408 | #~ msgid "Can't load \"%s\": %s" | 2462 | #~ msgid "Can't load \"%s\": %s" |
2409 | #~ msgstr "Não foi possível carregar \"%s\": %s" | 2463 | #~ msgstr "Não foi possível carregar \"%s\": %s" |
@@ -2429,9 +2483,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -2429,9 +2483,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
2429 | #~ msgid "Can't open CRL File" | 2483 | #~ msgid "Can't open CRL File" |
2430 | #~ msgstr "Não foi possível abrir arquivo CRL" | 2484 | #~ msgstr "Não foi possível abrir arquivo CRL" |
2431 | 2485 | ||
2432 | -#~ msgid "Can't open HTTP session" | ||
2433 | -#~ msgstr "Não foi possível abrir sessão HTTP" | ||
2434 | - | ||
2435 | #~ msgid "Can't open file" | 2486 | #~ msgid "Can't open file" |
2436 | #~ msgstr "Não foi possível abrir arquivo" | 2487 | #~ msgstr "Não foi possível abrir arquivo" |
2437 | 2488 | ||
@@ -2462,9 +2513,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -2462,9 +2513,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
2462 | #~ msgid "Can't read \"%s\": %s" | 2513 | #~ msgid "Can't read \"%s\": %s" |
2463 | #~ msgstr "Não foi possível ler \"%s\": %s" | 2514 | #~ msgstr "Não foi possível ler \"%s\": %s" |
2464 | 2515 | ||
2465 | -#~ msgid "Can't read HTTP response size." | ||
2466 | -#~ msgstr "Não posso obter tamanho da resposta HTTP" | ||
2467 | - | ||
2468 | #~ msgid "Can't recognize \"%s\" as a valid host type" | 2516 | #~ msgid "Can't recognize \"%s\" as a valid host type" |
2469 | #~ msgstr "Não reconheço \"%s\" como um tipo de host válido" | 2517 | #~ msgstr "Não reconheço \"%s\" como um tipo de host válido" |
2470 | 2518 | ||
@@ -2501,12 +2549,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -2501,12 +2549,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
2501 | #~ msgid "Can't search LDAP server" | 2549 | #~ msgid "Can't search LDAP server" |
2502 | #~ msgstr "Não foi possível conectar ao servidor LDAP" | 2550 | #~ msgstr "Não foi possível conectar ao servidor LDAP" |
2503 | 2551 | ||
2504 | -#~ msgid "Can't send HTTP request." | ||
2505 | -#~ msgstr "Não posso enviar requisição HTTP" | ||
2506 | - | ||
2507 | -#~ msgid "Can't set LDAP protocol version" | ||
2508 | -#~ msgstr "Não é possível setar a versão do protocolo LDAP" | ||
2509 | - | ||
2510 | #~ msgid "Can't set callback table" | 2552 | #~ msgid "Can't set callback table" |
2511 | #~ msgstr "Não foi possível setar a tabela de retornos" | 2553 | #~ msgstr "Não foi possível setar a tabela de retornos" |
2512 | 2554 | ||
@@ -2525,9 +2567,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -2525,9 +2567,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
2525 | #~ msgid "Can't start upload." | 2567 | #~ msgid "Can't start upload." |
2526 | #~ msgstr "Não foi possível iniciar upload." | 2568 | #~ msgstr "Não foi possível iniciar upload." |
2527 | 2569 | ||
2528 | -#~ msgid "Can't use this system winsock" | ||
2529 | -#~ msgstr "Não posso usar a winsock do sistema" | ||
2530 | - | ||
2531 | #~ msgid "Can't use winsock version %d.%d" | 2570 | #~ msgid "Can't use winsock version %d.%d" |
2532 | #~ msgstr "Não posso usar versão winsock %d.%d" | 2571 | #~ msgstr "Não posso usar versão winsock %d.%d" |
2533 | 2572 | ||
@@ -2724,9 +2763,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -2724,9 +2763,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
2724 | #~ msgid "Empty port name" | 2763 | #~ msgid "Empty port name" |
2725 | #~ msgstr "Porta em branco" | 2764 | #~ msgstr "Porta em branco" |
2726 | 2765 | ||
2727 | -#~ msgid "Empty response from HTTP server." | ||
2728 | -#~ msgstr "Recebi resposta vazia do servidor HTTP" | ||
2729 | - | ||
2730 | #~ msgid "" | 2766 | #~ msgid "" |
2731 | #~ "Erase\n" | 2767 | #~ "Erase\n" |
2732 | #~ "Input" | 2768 | #~ "Input" |
@@ -2758,9 +2794,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -2758,9 +2794,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
2758 | #~ msgid "Error loading CRL" | 2794 | #~ msgid "Error loading CRL" |
2759 | #~ msgstr "Erro lendo CRL" | 2795 | #~ msgstr "Erro lendo CRL" |
2760 | 2796 | ||
2761 | -#~ msgid "Error receiving HTTP response." | ||
2762 | -#~ msgstr "Erro recebendo resposta HTTP." | ||
2763 | - | ||
2764 | #~ msgid "Error resolving %s: %s" | 2797 | #~ msgid "Error resolving %s: %s" |
2765 | #~ msgstr "Erro ao resolver %s: %s" | 2798 | #~ msgstr "Erro ao resolver %s: %s" |
2766 | 2799 | ||
@@ -3088,9 +3121,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -3088,9 +3121,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
3088 | #~ msgid "Not available" | 3121 | #~ msgid "Not available" |
3089 | #~ msgstr "Não disponível" | 3122 | #~ msgstr "Não disponível" |
3090 | 3123 | ||
3091 | -#~ msgid "Not connected to host" | ||
3092 | -#~ msgstr "Sem conexão com servidor" | ||
3093 | - | ||
3094 | #~ msgid "Not the same terminal type" | 3124 | #~ msgid "Not the same terminal type" |
3095 | #~ msgstr "O tipo de terminal é diferente" | 3125 | #~ msgstr "O tipo de terminal é diferente" |
3096 | 3126 | ||
@@ -3856,14 +3886,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -3856,14 +3886,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
3856 | #~ "O certificado de segurança apresentado pelo servidor não foi assinado por " | 3886 | #~ "O certificado de segurança apresentado pelo servidor não foi assinado por " |
3857 | #~ "uma autoridade certificadora confiável." | 3887 | #~ "uma autoridade certificadora confiável." |
3858 | 3888 | ||
3859 | -#, c-format | ||
3860 | -#~ msgid "The system error was \"%s\"" | ||
3861 | -#~ msgstr "O erro do sistema operacional foi \"%s\"" | ||
3862 | - | ||
3863 | -#, c-format | ||
3864 | -#~ msgid "The system error was %s" | ||
3865 | -#~ msgstr "O erro do sistema operacional foi \"%s\"" | ||
3866 | - | ||
3867 | #~ msgid "The system error was %s (%d)" | 3889 | #~ msgid "The system error was %s (%d)" |
3868 | #~ msgstr "O erro do sistema operacional foi \"%s\" (%d)" | 3890 | #~ msgstr "O erro do sistema operacional foi \"%s\" (%d)" |
3869 | 3891 | ||
@@ -3910,9 +3932,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -3910,9 +3932,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
3910 | #~ msgstr "" | 3932 | #~ msgstr "" |
3911 | #~ "Esta versão do %s foi gerada sem suporte para conexões seguras (SSL)." | 3933 | #~ "Esta versão do %s foi gerada sem suporte para conexões seguras (SSL)." |
3912 | 3934 | ||
3913 | -#~ msgid "Timeout conneting to host" | ||
3914 | -#~ msgstr "Timeout ao conectar com o host" | ||
3915 | - | ||
3916 | #~ msgid "To" | 3935 | #~ msgid "To" |
3917 | #~ msgstr "Para" | 3936 | #~ msgstr "Para" |
3918 | 3937 | ||
@@ -4069,9 +4088,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -4069,9 +4088,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
4069 | #~ msgid "WSAEventSelect failed" | 4088 | #~ msgid "WSAEventSelect failed" |
4070 | #~ msgstr "WSAEventSelect falhou" | 4089 | #~ msgstr "WSAEventSelect falhou" |
4071 | 4090 | ||
4072 | -#~ msgid "WSAStartup failed" | ||
4073 | -#~ msgstr "WSAStartup falhou" | ||
4074 | - | ||
4075 | #~ msgid "WaitForMultipleObjects() failed when processing for events." | 4091 | #~ msgid "WaitForMultipleObjects() failed when processing for events." |
4076 | #~ msgstr "WaitForMultipleObjects() falhou ao processar eventos" | 4092 | #~ msgstr "WaitForMultipleObjects() falhou ao processar eventos" |
4077 | 4093 | ||
@@ -4090,10 +4106,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | @@ -4090,10 +4106,6 @@ msgstr "setsockopt(SO_OOBINLINE) has failed" | ||
4090 | #~ msgid "Windows Western languages (CP1252)" | 4106 | #~ msgid "Windows Western languages (CP1252)" |
4091 | #~ msgstr "Windows ocidental (CP1252)" | 4107 | #~ msgstr "Windows ocidental (CP1252)" |
4092 | 4108 | ||
4093 | -#, c-format | ||
4094 | -#~ msgid "Windows error %d" | ||
4095 | -#~ msgstr "Erro windows foi %d" | ||
4096 | - | ||
4097 | #~ msgid "Windows error was \"%s\" (%u)" | 4109 | #~ msgid "Windows error was \"%s\" (%u)" |
4098 | #~ msgstr "Erro windows foi \"%s\" (%u)" | 4110 | #~ msgstr "Erro windows foi \"%s\" (%u)" |
4099 | 4111 |
src/core/macos/util.c
@@ -29,6 +29,7 @@ | @@ -29,6 +29,7 @@ | ||
29 | #include <CoreFoundation/CFBundle.h> | 29 | #include <CoreFoundation/CFBundle.h> |
30 | #include <CoreFoundation/CFURL.h> | 30 | #include <CoreFoundation/CFURL.h> |
31 | #include <sys/syslimits.h> | 31 | #include <sys/syslimits.h> |
32 | +#include <lib3270.h> | ||
32 | #include <lib3270/os.h> | 33 | #include <lib3270/os.h> |
33 | 34 | ||
34 | static char * concat(char *path, const char *name, size_t *length) { | 35 | static char * concat(char *path, const char *name, size_t *length) { |
@@ -66,30 +67,60 @@ static char * build_filename(const char *root, const char *str, va_list args) { | @@ -66,30 +67,60 @@ static char * build_filename(const char *root, const char *str, va_list args) { | ||
66 | char * lib3270_build_data_filename(const char *str, ...) { | 67 | char * lib3270_build_data_filename(const char *str, ...) { |
67 | 68 | ||
68 | va_list args; | 69 | va_list args; |
69 | - va_start (args, str); | ||
70 | 70 | ||
71 | - char *filename; | 71 | + size_t szPath = PATH_MAX; |
72 | + lib3270_autoptr(char) path = (char *) lib3270_malloc(szPath); | ||
73 | + char *filename = NULL; | ||
74 | + | ||
75 | + // | ||
76 | + // Try bundle | ||
77 | + // | ||
72 | CFBundleRef mainBundle = CFBundleGetMainBundle(); | 78 | CFBundleRef mainBundle = CFBundleGetMainBundle(); |
79 | + | ||
73 | if (mainBundle) { | 80 | if (mainBundle) { |
81 | + | ||
74 | CFURLRef url = CFBundleCopyBundleURL(mainBundle); | 82 | CFURLRef url = CFBundleCopyBundleURL(mainBundle); |
83 | + | ||
75 | if (url) { | 84 | if (url) { |
76 | - size_t szPath = PATH_MAX; | ||
77 | - char *path = (char *) lib3270_malloc(szPath); | ||
78 | - CFURLGetFileSystemRepresentation(url, true, path, szPath); | 85 | + |
86 | + CFURLGetFileSystemRepresentation(url, true, (UInt8 *) path, szPath); | ||
79 | CFRelease(url); | 87 | CFRelease(url); |
80 | path = concat(path, "Contents/Resources", &szPath); | 88 | path = concat(path, "Contents/Resources", &szPath); |
81 | - filename = build_filename(path, str, args); | ||
82 | - lib3270_free(path); | ||
83 | - } else { | ||
84 | - filename = build_filename(LIB3270_STRINGIZE_VALUE_OF(DATADIR), str, args); | 89 | + |
90 | + if(access(path,R_OK) == 0) { | ||
91 | + va_start (args, str); | ||
92 | + filename = build_filename(path, str, args); | ||
93 | + va_end (args); | ||
94 | + return filename; | ||
95 | + } | ||
96 | +#ifdef DEBUG | ||
97 | + else { | ||
98 | + debug("No bundle in '%s'",path); | ||
99 | + } | ||
100 | +#endif // DEBUG | ||
85 | } | 101 | } |
86 | - } else { | ||
87 | - filename = build_filename(LIB3270_STRINGIZE_VALUE_OF(DATADIR), str, args); | 102 | + |
88 | } | 103 | } |
89 | 104 | ||
90 | - va_end (args); | 105 | + /* |
106 | + // | ||
107 | + // Try EXE Path | ||
108 | + // | ||
109 | + { | ||
110 | + uint32_t size = szPath; | ||
111 | + _NSGetExecutablePath(path, &size); | ||
112 | + path[size] = 0; | ||
91 | 113 | ||
92 | - return filename; | 114 | + |
115 | + } | ||
116 | + */ | ||
117 | + | ||
118 | + // | ||
119 | + // Not found, use the system datadir | ||
120 | + // | ||
121 | + va_start (args, str); | ||
122 | + filename = build_filename(LIB3270_STRINGIZE_VALUE_OF(DATADIR), str, args); | ||
123 | + va_end (args); | ||
93 | 124 | ||
94 | return filename; | 125 | return filename; |
95 | } | 126 | } |
src/testprogram/testprogram.c
@@ -75,6 +75,12 @@ int main(int argc, char *argv[]) { | @@ -75,6 +75,12 @@ int main(int argc, char *argv[]) { | ||
75 | 75 | ||
76 | textdomain("lib3270"); | 76 | textdomain("lib3270"); |
77 | 77 | ||
78 | + { | ||
79 | + lib3270_autoptr(char) testfilename = lib3270_build_data_filename("test",NULL); | ||
80 | + printf("\n\nFilename: '%s'\n\n", testfilename); | ||
81 | + return 0; | ||
82 | + } | ||
83 | + | ||
78 | // #pragma GCC diagnostic push | 84 | // #pragma GCC diagnostic push |
79 | // #pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" | 85 | // #pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" |
80 | static struct option options[] = { | 86 | static struct option options[] = { |