/[winpt]/trunk/Src/ChangeLog
ViewVC logotype

Diff of /trunk/Src/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 195 by twoaday, Mon Apr 3 17:10:47 2006 UTC revision 247 by twoaday, Fri Jul 21 08:19:24 2006 UTC
# Line 1  Line 1 
1    2006-07-10  Timo Schulz  <[email protected]>
2    
3            * wptUtil.cpp (check_file_name): New.
4            * wptKeyRevokeDlg.cpp (mk_cert_name): Avoid illegal chars.
5            (key_revoke_dlg_proc): Likewise.
6            * wptMDSumDlg.cpp (mdsum_dlg_proc): Corrected file handling.
7            * wptImportList.cpp (implist_load): Likewise.
8            * wptFileSaveDlg.cpp (file_save_dlg_proc): Likewise.
9            * wptFileVerifyDlg.cpp (file_verify_dlg_proc): Hide dialog item.
10            
11    2006-07-05  Timo Schulz  <[email protected]>
12    
13            * wptMainProc.cpp (winpt_main_proc): Change menu texts.
14            * wptClipEditDlg.cpp (clip_edit_dlg_proc): More lightweight
15            with a menu instead of dozen of buttons.
16            
17    2006-07-01  Timo Schulz  <[email protected]>
18    
19            * wptFileManager.cpp (fm_sort): Rewritten.
20            (fm_build): Modify param type. Change all callers.
21            (fm_cmp_cb): Adjusted for the new code.
22            * wptMDSumDlg.cpp (mdsum_dlg_proc): Minor changes and model
23            for the list view.
24            * wptFileManagerDlg.cpp (file_manager_dlg_proc): Use info
25            context and model for the list view.
26            (update_status_bar): Fix calculation of the size of the
27            selected files.
28            * wptProgressDlg.cpp (wait_for_progress_cb): Changed semantic
29            and return type.
30            
31    2006-06-28  Timo Schulz  <[email protected]>
32    
33            * wptGPGPrefsDlg.cpp (load_gpg4win_values): Fix control logic
34            and memory leak.
35            * wptListView.cpp (listview_find_substr): New.
36            (listview_sort_items): Use symbolic ids.
37            * wptKeyManager.cpp (km_find_key): Allow substring search.
38            
39    2006-06-27  Timo Schulz  <[email protected]>
40    
41            * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Also call viewer
42            when no sig has been found (if requested).
43            * wptClipEditDlg.cpp (clip_edit_dlg_proc): Use a button to
44            quote instead of the check box. Cleanups.
45            * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Correct
46            sorting problem and wrong icon display.
47            * wptListView.cpp (listview_sort_items): Correct code for
48            checkbox based lists.
49            * wptKeylist.cpp (keylist_build): Add sorting icons.
50            * wptKeyEditDlgs.cpp (create_header_tooltip): New.
51            
52    2006-06-24  Timo Schulz  <[email protected]>
53    
54            * wptMainProc.cpp (winpt_main_proc): Localize missing string.
55            * wptKeyEditDlgs.cpp (do_add_new_subkey): Better fpr to keyid
56            conversion.
57            (subkey_list_init): Simplified.
58            
59    2006-06-22  Timo Schulz  <[email protected]>
60    
61            * WinPT-en.rc: Include versioninfo.rc to generate
62            the version info automatically.
63            
64    2006-06-19  Timo Schulz  <[email protected]>
65    
66            * wptClipDecryptDlg.cpp (verify_get_clip_info): Improved
67            format of the sig info text.
68            * wptKeyserver.cpp (check_hkp_response): Invert error logic.
69            * wptKeyserverDlg.cpp (keyserver_recv_key): Corrected error
70            handling.
71            * wptPassphraseDlg.cpp (request_key_passphrase): Return
72            utf8 encoded passphrase.
73            
74    2006-06-18  Timo Schulz  <[email protected]>
75    
76            * wptKeygenDlg.cpp (keygen_dlg_proc): Fix typo.
77            * wptClipDecryptDlg.cpp (verify_get_clip_info): New.
78            (verify_get_key_ownertrust): New.
79            (clip_decrypt_dlg_proc): New argument. Change all callers.
80            * wptClipEditDlg.cpp (clip_edit_dlg_proc): Handle the case
81            that the dialog was called with a param.
82            * wptMainProc.cpp (winpt_main_proc): Wait for thread in
83            case of dbl-click.
84            
85    2006-06-16  Timo Schulz  <[email protected]>
86    
87            * wptProgressDlg.cpp (wait_for_progress_cb): New.
88            * wptMainProc.cpp (winpt_main_proc): Use this function
89            to disallow to access the cache during synchronisation.
90            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Likewise.
91            * wptKeyserver.cpp (check_hkp_response): Improved text
92            extraction.
93            (parse_keyserver_error): New.
94            * wptPassphraseDlg.cpp (request_passphrase): Support utf8
95            encoding.
96            * wptKeyEditDlgs.cpp (keyedit_change_passwd): Warn if passhrase
97            needs to be utf8 encoded but still allow it.
98            * wptPassphraseCBDlg.cpp (passphrase_callback_proc): Utf8 support.
99            * wptKeygenDlg.cpp (keygen_dlg_proc): Likewise.
100            * wptKeyRevokeDlg.cpp (keyrevoke_dlg_proc): Likewise.
101            
102    2006-06-15  Timo Schulz  <[email protected]>
103    
104            * wptVerList.cpp (verlist_build): Use icons.
105            (verlist_add_sig): Set image number according to sig state.
106            
107    2006-06-14  Timo Schulz  <[email protected]>
108    
109            * wptAboutDlgs.cpp (about_winpt_dlg_proc): Translate
110            authors string here. Noted by Eduardo.
111            * wptSymEnc.cpp (gpg_clip_sym_encrypt): Check all return codes.
112            
113    2006-06-09  Timo Schulz  <[email protected]>
114    
115            * wptKeyEditDlgs.cpp (do_add_new_subkey): Properly handle
116            RSA_E and RSA_S.
117            * wptFileManager.cpp (fm_sym_encrypt): Better dialog title.
118            
119    2006-06-08  Timo Schulz  <[email protected]>
120    
121            * wptKeyserver.cpp (parse_keyserver_url): Handle special case.
122            * wptKeySignDlg.cpp (keysign_dlg_proc): Show photo if possible.
123            (showphoto_dlg_proc): New.
124            * wptKeyManagerDlg.cpp (restore_window_size): New.
125            (keymanager_dlg_proc): Restore original window size on startup.
126            (copy_key_info): Allow to copy multiple key items.
127            
128    2006-06-06  Timo Schulz  <[email protected]>
129    
130            * wptKeyEditCB.cpp (cmd_sign_handler): Return 0 by default
131            if no expire date were given.
132            
133    2006-06-05  Timo Schulz  <[email protected]>
134    
135            * wptPassphraseDlg.cpp (request_passphrase): Release mem
136            in case of errors.
137            (request_key_passphrase): New.
138            (set_passphrase_hint): New.
139            * wptKeyEditDlgs.cpp (do_editkey_sign_userid): Show passphrase
140            hint. Suggested by vedaal.
141            
142    2006-06-03  Timo Schulz  <[email protected]>
143    
144            * wptPINDlg.cpp (pin_dlg_proc): Remove static var.
145            * wptClipEncryptDlg.cpp (show_invalid_recipients): Handle
146            the case that 'encrypt-to' points to a non-existing item.
147            * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): Do not close
148            the dialog if an error occurred.
149            * wptKeygenDlg.cpp (keygn_dlg_proc): Check expirate date.
150            * wptKeyEditDlgs.cpp (keyedit_adduid_dlg_proc): Release mem
151            in case of errors.
152            * wptKeyserverDlg.cpp (check_pattern): Improved code.
153            (keyserver_dlg_proc): All comparisons are case insentensive.
154            * wptKeyserver.cpp (parse_uid_record): utf8 decode user id.
155            
156    2006-06-02  Timo Schulz  <[email protected]>
157    
158            * wptKeygenDlg.cpp (keygen_dlg_proc): Forgot to apply patch.
159            
160    2006-06-01  Timo Schulz  <[email protected]>
161    
162            * wptKeyserver.cpp (check_URL): change semantic.
163            (skip_type_prefix): Use check_URL().
164            * wptGPG.cpp (gnupg_backup_keyrings): New argument to
165            include secret keyring backups. Change all callers.
166            * wptRegistry.cpp (get_reg_winpt_prefs): Support new option.
167            (set_reg_winpt_prefs): Likewise.
168            * wptPreferencesDlg.cpp (on_init_dialog): Adjust the code.
169            
170    2006-05-29  Timo Schulz  <[email protected]>
171    
172            * wptKeyserver.cpp (keyserver_set_default): Also set default port.
173    
174    2006-05-27  Timo Schulz  <[email protected]>
175    
176            * wptKeyEditDlgs.cpp (keyedit_change_passwd): Handle empty
177            passphrase requests.
178            * wptClipDecryptDlg.cpp (verify_show_signature_state): Modified
179            for global use.
180            * wptFileManager.cpp (fm_decrypt): Use it here.
181            * wptClipEncryptDlg.cpp (clip_encrypt_dlg_proc): Simplified.
182            
183    2006-05-25  Timo Schulz  <[email protected]>
184    
185            * wptGPGUtil.cpp (gpg_rebuild_cache): Return error code.
186            * wptGPGME.cpp (winpt_get_seckey): Fix off-by-one bug.
187            * wptVerifyList.cpp (verlist_build): New argument type.
188            Change all callers.
189            (verlist_set_info_control): New.
190            (verlist_set_additional_info): New.
191            * wptFileVerifyDlg.cpp (file_verify_dlg_proc): Adjust code.
192            * wptClipVerifyDlg.cpp (clip_verify_dlg_proc): Likewise.
193            * wptFileCBS.cpp (read_cb, write_cb): Add logging.
194            
195    2006-05-23  Timo Schulz  <[email protected]>
196    
197            * wptKeyEditDlgs.cpp (do_add_new_userid): Fix re-introduced
198            problem.
199            (keyedit_main_dlg_proc): Popup menu for the user ID list
200            with common commands.
201            * wptKeyserverDlg.cpp (keyserver_dlg_proc): Automatically
202            disable search for ldap servers.
203            Use subkeys.pgp.net by default when no server was selected.
204    
205    2006-05-22  Timo Schulz  <[email protected]>
206    
207            * wptRegistry.cpp (set_reg_winpt_prefs, get_reg_winpt_prefs):
208            Support for the new 'default ext' value.
209            * wptPreferencesDlg.cpp (on_init_dialog): Likewise.
210            (prefs_dlg_proc): Likewise.
211            * wptFileManager.cpp (file_get_extension): Likewise.
212            (get_output_file): Likewise.
213            (fm_export): Likewise.
214            
215    2006-05-20  Timo Schulz  <[email protected]>
216    
217            * wptKeyPropsDlg.cpp (keyprops_load_photo): avoid expensive
218            process call when no photo is available.
219            (keyprops_dlg_proc): avoid static data.
220            * wptFileManager.cpp (fm_add_sig_stat): Free memory in case
221            of on demand key requests.
222            (show_verify_result): Likewise.
223            (secret_key_available): Likewise.
224            (fm_decrypt, fm_sign): Handle the new on demand key request
225            mode and free all memory.
226            
227    2006-05-15  Timo Schulz  <[email protected]>
228    
229            * wptKeyEditDlgs.cpp (userid_list_init): Forgot to
230            apply patch. Thanks to vedaal.
231            
232    2006-05-14  Timo Schulz  <[email protected]>
233    
234            * wptKeyCache.cpp (gpg_keycache_update_attr): Parse
235            preferred keyserver URL.
236            * wptHTTP.cpp (extractHostInfo): Fix segv.
237            * wptGPGUtil.cpp (gpg_find_key_subpacket): Ignore default
238            gpg.conf.
239            * wptKeyserverSearchDlg.cpp (search_hkp_keys): Do not
240            assume an existing user id.
241            * wptPassphraseCB.cpp (passphrase_cb): Automatic cancel
242            if no passphrase is available.
243    
244    2006-05-13  Timo Schulz  <[email protected]>
245    
246            * wpMainProc.cpp (secret_key_available): Move it...
247            * wptGPGME.cpp: ..to this file.
248            (check_ultimate_trusted_key): Handle the case there
249            is no secret key available.
250            * wptFileManagerDlg.cpp (update_ui_items): Improved.
251            * wptKeyManagerDlg.cpp (key_manager_dlg_proc): Deactive
252            some functions when no secret key is available.
253            * wptKeyserverSearchDlg.cpp (search_hkp_keys): Adjust
254            code and also display pubkey algorithm.
255            * wptKeyserver.cpp (safe_alloc): New.
256            (count_keys_in_response): New.
257            (parse_pub_record): New.
258            (parse_uid_record): New.
259            (kserver_release_key): New.
260            (kserver_search_begin, kserver_search_next_key):
261            Adjust for the machine readable output. Removed old code.
262            (parse_keyserver_url): New.
263            * wptUtil.cpp (substr): New.
264            * wptKeyManager.cpp (km_refresh_one_key): Properly
265            parse the keyserver URL.
266            
267    2006-05-11  Timo Schulz  <[email protected]>
268    
269            * wptPassphraseCB.cpp (release_gpg_recipients): New.
270            (release_gpg_recipients): Use it here.
271            * wptFileManager.cpp (fm_decrypt): List all recipients.
272            Thanks to vedaal.
273            * wptGPG.cpp (extract_keyid): New.
274            (get_gnupg_default_key): Use it here.
275            * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Allow to verify
276            one-pass-sigs again.
277            
278    2006-05-09  Timo Schulz  <[email protected]>
279    
280            * wptKeyRevokersDlg.cpp (revokelist_build): Store key ptr.
281            * wptClipSignDlg.cpp (gpg_clip_sign): Improve error handling.
282            * wptKeysigDlg.cpp (sigprops_dlg_proc): Correct expire date.
283            
284    2006-05-07  Timo Schulz  <[email protected]>
285    
286            * wptKeyserverDlg.cpp (hkp_err_box): Improved.
287            * wptKeyserver.cpp (wsock_strerror): Likewise.
288            * wptKeygenCBDlg.cpp (keygen_cb_dlg_destroy): New param.
289            Change all callers.
290            * wptKeysigDlg.cpp (do_load_keyprops): Correct key update
291            problem.
292            
293    2006-05-06  Timo Schulz  <[email protected]>
294    
295            * wptKeyManagerDlg.cpp (reload_keycache): Use pre-defined
296            sorting order if available.
297            * wptKeyPropsDlg.cpp (key_props_dlg_proc): Use 0x prefix
298            for the key ID.
299            (get_pref_cipher): Differ between the AES algorithm IDs.
300            (key_is_valid): New.
301            * wptKeyserverDlg.cpp (check_pattern): Simplified.
302            
303    2006-05-03  Timo Schulz  <[email protected]>
304    
305            * wptKeyCache.cpp (keycache_prepare2): Fix possible segv.
306            Thanks to Mathias.
307            
308    2006-05-02  Timo Schulz  <[email protected]>
309    
310            * wptFileManagerDlg.cpp (file_encrypt_dlg_proc): Use a
311            caption for the radio button group.
312            * wptKeyserverDlg.cpp (keyserver_recv_key): Use new code.
313            * wptKeyserver.cpp (kserver_recvkey, finger_recvkey,
314            ldap_recvkey): Avoid fixed buffers.
315            (do_spawn_ldap_helper): New.
316            (ldap_recvkey): Factor out code into helper function.
317            * wptPassphraseCBDlg.cpp (passphrase_callback_proc):
318            Increase width of the list box to make sure even large
319            user IDs will be completly displayed.
320            
321    2006-05-01  Timo Schulz  <[email protected]>
322    
323            * WinPT.cpp (WinMain): Check if the user has admin privileges.
324            * wptW32API.cpp (user_is_admin): New.
325            * wptKeysigDlg.cpp (sigprops_dlg_proc): Cosmetical changes.
326            * wptKeyManagerDlg.cpp (key_manager_dlg_proc): Use timer
327            to re-activate the window again.
328            * wptKeylist.cpp (get_key_trust2): Differ between "full"
329            and "ultimate".
330            * wptKeyCache.cpp (keycache_prepare2): Primary user-id
331            has now highest priority.
332            * wptClipDecryptDlg.cpp (clip_decrypt_dlg): Use new utf8
333            system.
334            
335    2006-04-30  Timo Schulz  <[email protected]>
336    
337            * wptKeyCache.cpp (gpg_keycache_release): Release revoker
338            list if needed.
339            * wptKeyRevokersDlg.cpp (key_get_revokers): New.
340            (key_revokers_dlg_proc): Expect winpt_key_t. Change all callers.
341            * wptKeyEditDlgs.cpp (check_desig_rev): New.
342            (do_editkey_minimize): New.
343            * wptKeyRevokeDlg.cpp (key_revoke_dlg_proc): Support to
344            generate a revoc cert as a desig revoker.
345            
346    2006-04-29  Timo Schulz  <[email protected]>
347    
348            * wptVerifyList.cpp (verlist_build): Adjusted code for new
349            list view interface.
350            * wptSigList.cpp (siglist_build): Likewise.
351            * wptKeyEditDlgs.cpp (showpref_dlg_proc): Correct code
352            to display the preferences of the selected UID. Thanks to Mathias.
353            * wptKeyCacheDlg.cpp (keycache_dlg_proc): Return 1 in case
354            of an error.
355            * wptKeyCache.cpp (gpg_keycache_update_key): Always update
356            the utf8 decoded uid list.
357            * wptImportList.cpp (decode_userid): Do utf8 decoding here.
358            * wptListView.cpp (listview_new): New param for HWND handle.
359            Change all callers.
360            * wptFileManager.cpp (fm_add_sig_stat): Use utf8 decoding.
361            * wptGPGUtil.cpp (gpg_revoke_cert): Support --desig-revoker.
362            * wptClipVerifyDlg.cpp (wptClipVerifyDlg.cpp): Correct
363            keyid extraction.
364            
365    2006-04-28  Timo Schulz  <[email protected]>
366    
367            * wptMAPI.cpp (mapi_send_pubkey): Use new key struct.
368            * wptKeysigDlg.cpp (sigprops_dlg_proc): Prepare dialog
369            for handling policy URLs.
370            * wptKeyManagerDlg.cpp (save_column_info, restore_column_info):
371            New option KMSortBy.
372            * wptKeylist.cpp (get_key_algo): Lower priority for revoked keys.
373            * wptKeyEdit.cpp (minimizeKey): New.
374            * wptKeyCache.cpp (gpg_keycache_update_key): Reload utf8 uid list.
375            
376    2006-04-27  Timo Schulz  <[email protected]>
377    
378            * wptKeyManager.cpp (km_get_key_ptr): New.
379            * wptListview.cpp (listview_get_item_text): Drop utf8 support.
380            * wptKeyCache.cpp (keycache_decode_uids): New.
381            (free_native_uids): New.
382            * wptKeyEdit.cpp (uid_inf_colon_handler): Do utf8 decodig here.
383            
384    2006-04-26  Timo Schulz  <[email protected]>
385    
386            * wptKeylist.cpp (get_keyid_from_fpr): New.
387            * wptDecryptClipDlg.cpp (clip_decrypt_dlg): Use it here.
388            * wptVerifyList.cpp (verlist_add_sig): Likewise.
389            
390    2006-04-25  Timo Schulz  <[email protected]>
391    
392            * wptFileManagerDlg.cpp (file_manager_dlg_proc): Handle IDCANCEL.
393            * wptMDSumDlg.cpp (hash_selected_files): New.
394            (mdsum_dlg_proc): Cleanups.
395            * wptKeysignDlg.cpp (keysign_dlg_proc): Fix segv.
396            
397    2006-04-23  Timo Schulz  <[email protected]>
398    
399            * wptW32API.cpp (SetDlgItemText_utf8): New.
400            (SetWindowText_utf8): New.
401            (GetDlgItemText_utf8): New.
402            * wptListView.cpp (listview_add_sub_item): Internal
403            utf8 support.
404            
405    2006-04-22  Timo Schulz  <[email protected]>
406    
407            * wptKeyEditDlgs.cpp (addrevoker_dlg_proc): Encode
408            revoker name in UTF8.
409            * wptKeysigDlg.cpp (keysig_dlg_proc): Fix utf8 problem
410            with the window title.
411            
412    2006-04-20  Timo Schulz  <[email protected]>
413    
414            * wptUTF8.cpp (native_to_utf8): Use c++ alloc.
415            * wptKeygenDlg.cpp (keygen_dlg_proc): Do not mix c and
416            c++ memory allocation.
417            * wptFileManager.cpp (show_verify_result): Show PKA status
418            if possible.
419            * wptClipVerifyDlg.cpp (get_pka_status): New.
420            (clip_verify_dlg_proc): Show PKA status if possible.
421            * wptClipEditDlg.cpp (clip_edit_dlg_proc): Handle IDCANCEL
422            to use ESC to quit the dialog.
423            * wptKeyEditDlgs.cpp (keyedit_adduid_dlg_proc): Also
424            encode the comment in UTF8. Thanks to Werner and Jan.
425            
426    2006-04-16  Timo Schulz  <[email protected]>
427    
428            * wptHTTP.cpp (getErrorCode): New.
429            (connect): Store winsock error code.
430            * wptGPGMEData.cpp (is_armor_header): New.
431            * wptGPG.cpp (check_gnupg_engine): Free context.
432            (gnupg_backup_keyrings): Do not use global vars.
433            * wptGPGUtil.cpp (gpg_export_seckey): Export in ascii format.
434            
435    2006-04-15  Timo Schulz  <[email protected]>
436    
437            * wptKeyManager.cpp (km_get_key): New.
438            (km_key_show_revoc_info): New.
439            * wptKeyRevokeDlg.cpp (key_revoke_dlg): Cleanups.
440            (on_init_dialog): New.
441            * wptKeyManagerDlg.cpp (key_manager_dlg_proc): Factour
442            out some common code and use km_get_key() instead.
443            * wptKeyEditDlgs.cpp (do_init_keylist): Change second
444            param type. Change all callers.
445            * wptKeyEdit.cpp (addNotation): New.
446            * wptKeyEditCB.cpp (editkey_command_handler): Remove 'step'
447            param everywhere. Change all callers.
448            
449    2006-04-09  Timo Schulz  <[email protected]>
450    
451            * wptGPGPrefsDlg.cpp (gpgprefs_dlg_proc): Only return true
452            if the homedir value was changed.
453            * wptGPG.cpp (default_key_from_cache): Only return secret key
454            if public part is available.
455            (set_gnupg_default_key): Fix NULL problem.
456            * wptKeyEditDlgs.cpp (do_editkey_clean): Set update flag.
457            * wptFileCBS.cpp (write_cb, read_cb): Better error handling.
458            * wptFileManagerDlg.cpp (file_manager_dlg_proc): Handle
459            'always-on-top' correctly.
460            * wptKeylist.cpp (keylist_get_recipients): Allocate enough
461            mem to hold all possible keys.
462            (keylist_enum_keys): Likewise.
463            
464    2006-04-08  Timo Schulz  <[email protected]>
465    
466            * wptKeylist.cpp (keylist_get_recipients): Always use utf8 output.
467            * wptKeyserver.cpp (kserver_connect): Fixed proxy support.
468            * wptKeyserverSearchDlg.cpp (fetch_keys): New.
469            * WinPT.cpp (WinMain): if the default key was not found, reset
470            the gpg.conf entry.
471            * wptFileManager.cpp (fm_encrypt_into_zip): Use correct output
472            file name.
473            (show_verify_result): Always use utf8 output.
474            (get_output_file): Case in-sentensive comparison.
475            (fm_assume_onepass_sig): Fixed temp file handling.
476            * wptClipEncryptDlg.cpp (show_invalid_recipients): Fix utf8
477            output.
478            * wptKeyManagerDlg.cpp (keymanager_dlg_proc): Fix possible segv.
479            
480    2006-04-07  Timo Schulz  <[email protected]>
481    
482            * wptW32API.cpp (set_clip_text): Change code so it also
483            works again with non-XP systems.
484            
485  2006-04-02  Timo Schulz  <[email protected]>  2006-04-02  Timo Schulz  <[email protected]>
486    
487          * wptKeyserver.cpp: decrease general threshold for timeout.          * wptKeyserver.cpp: decrease general threshold for timeout.

Legend:
Removed from v.195  
changed lines
  Added in v.247

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26