Commit: 2413b444d0c41639c49cd3bc76364077eff7d9da
Author: Campbell Barton
Date:   Sat Feb 15 12:05:51 2014 +1100
https://developer.blender.org/rB2413b444d0c41639c49cd3bc76364077eff7d9da

Fix T38640: password values showed in tooltips

also disable copying password text.

===================================================================

M       source/blender/editors/interface/interface_handlers.c
M       source/blender/editors/interface/interface_regions.c

===================================================================

diff --git a/source/blender/editors/interface/interface_handlers.c 
b/source/blender/editors/interface/interface_handlers.c
index cfdc0c8..a426cbd 100644
--- a/source/blender/editors/interface/interface_handlers.c
+++ b/source/blender/editors/interface/interface_handlers.c
@@ -1677,6 +1677,13 @@ static void ui_but_copy_paste(bContext *C, uiBut *but, 
uiHandleButtonData *data,
                return;
        }
 
+       if (mode == 'c') {
+               /* disallow copying from any passwords */
+               if (but->rnaprop && (RNA_property_subtype(but->rnaprop) == 
PROP_PASSWORD)) {
+                       return;
+               }
+       }
+
        if (mode == 'v') {
                /* extract first line from clipboard in case of multi-line 
copies */
                int pbuf_len;
diff --git a/source/blender/editors/interface/interface_regions.c 
b/source/blender/editors/interface/interface_regions.c
index 0dc1008..cb52e0c 100644
--- a/source/blender/editors/interface/interface_regions.c
+++ b/source/blender/editors/interface/interface_regions.c
@@ -325,12 +325,15 @@ ARegion *ui_tooltip_create(bContext *C, ARegion 
*butregion, uiBut *but)
        }
 
        if (ELEM3(but->type, TEX, SEARCH_MENU, SEARCH_MENU_UNLINK)) {
-               /* full string */
-               ui_get_but_string(but, buf, sizeof(buf));
-               if (buf[0]) {
-                       BLI_snprintf(data->lines[data->totline], 
sizeof(data->lines[0]), TIP_("Value: %s"), buf);
-                       data->color_id[data->totline] = UI_TIP_LC_NORMAL;
-                       data->totline++;
+               /* better not show the value of a password */
+               if ((but->rnaprop && (RNA_property_subtype(but->rnaprop) == 
PROP_PASSWORD)) == 0) {
+                       /* full string */
+                       ui_get_but_string(but, buf, sizeof(buf));
+                       if (buf[0]) {
+                               BLI_snprintf(data->lines[data->totline], 
sizeof(data->lines[0]), TIP_("Value: %s"), buf);
+                               data->color_id[data->totline] = 
UI_TIP_LC_NORMAL;
+                               data->totline++;
+                       }
                }
        }

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to