Commit 4a49b585c30fb3c8e59a3ad9cf3d86f0e81b2ed2
1 parent
2bad783a
Exists in
master
and in
3 other branches
Ajustes no módulo de transferência de arquivos
Showing
1 changed file
with
16 additions
and
2 deletions
Show diff stats
| ... | ... | @@ -226,7 +226,21 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); |
| 226 | 226 | |
| 227 | 227 | // Open local file |
| 228 | 228 | #ifdef _WIN32 |
| 229 | - ft_local_file = fopen(local,(flags & LIB3270_FT_OPTION_RECEIVE) ? ((flags & LIB3270_FT_OPTION_APPEND) ? "ab" : "wb") : "rb"); | |
| 229 | + | |
| 230 | + char openmode[5] = ""; | |
| 231 | + int opensize = 0; | |
| 232 | + | |
| 233 | + openmode[opensize++] = flags & LIB3270_FT_OPTION_RECEIVE ? "r" : "w"; | |
| 234 | + openmode[opensize++] = flags & LIB3270_FT_OPTION_CRLF ? "t" : "b"; | |
| 235 | + | |
| 236 | + // É para adicionar? | |
| 237 | + if(flags & LIB3270_FT_OPTION_APPEND) { | |
| 238 | + openmode[opensize++] = 'a'; | |
| 239 | + } | |
| 240 | + | |
| 241 | + openmode[opensize++] = 0; | |
| 242 | + ft_local_file = fopen(local,openmode); | |
| 243 | + | |
| 230 | 244 | #else |
| 231 | 245 | ft_local_file = fopen(local,(flags & LIB3270_FT_OPTION_RECEIVE) ? ((flags & LIB3270_FT_OPTION_APPEND) ? "a" : "w") : "r"); |
| 232 | 246 | #endif // _WIN32 |
| ... | ... | @@ -289,7 +303,7 @@ static void set_ft_state(H3270FT *session, LIB3270_FT_STATE state); |
| 289 | 303 | |
| 290 | 304 | LIB3270_EXPORT int lib3270_ft_start(H3270 *hSession) |
| 291 | 305 | { |
| 292 | - static const char * rec = "fvu"; | |
| 306 | + static const char * rec = "FVU"; | |
| 293 | 307 | static const char * un[] = { "tracks", "cylinders", "avblock" }; |
| 294 | 308 | |
| 295 | 309 | char op[4096]; | ... | ... |