Modified: trunk/Source/WebKit/efl/ChangeLog (92762 => 92763)
--- trunk/Source/WebKit/efl/ChangeLog 2011-08-10 10:24:10 UTC (rev 92762)
+++ trunk/Source/WebKit/efl/ChangeLog 2011-08-10 11:53:31 UTC (rev 92763)
@@ -1,3 +1,22 @@
+2011-08-10 Grzegorz Czajkowski <[email protected]>
+
+ [EFL] API methods check NULL and return proper value.
+ https://bugs.webkit.org/show_bug.cgi?id=65844
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ Check NULL before access to the smart and private data of the view object
+ and return the proper value if error occurred.
+
+ * ewk/ewk_view.cpp:
+ (ewk_view_zoom_range_set):
+ (ewk_view_zoom_range_min_get):
+ (ewk_view_zoom_range_max_get):
+ (ewk_view_user_scalable_set):
+ (ewk_view_user_scalable_get):
+ (ewk_view_device_pixel_ratio_get):
+ * ewk/ewk_view.h:
+
2011-08-10 KwangHyuk Kim <[email protected]>
[EFL] Remove unused local variable from _ewk_tiled_backing_store_item_process_idler_cb.
Modified: trunk/Source/WebKit/efl/ewk/ewk_view.cpp (92762 => 92763)
--- trunk/Source/WebKit/efl/ewk/ewk_view.cpp 2011-08-10 10:24:10 UTC (rev 92762)
+++ trunk/Source/WebKit/efl/ewk/ewk_view.cpp 2011-08-10 11:53:31 UTC (rev 92763)
@@ -3410,8 +3410,8 @@
Eina_Bool ewk_view_zoom_range_set(Evas_Object *o, float min_scale, float max_scale)
{
- EWK_VIEW_SD_GET(o, sd);
- EWK_VIEW_PRIV_GET(sd, priv);
+ EWK_VIEW_SD_GET_OR_RETURN(o, sd, EINA_FALSE);
+ EWK_VIEW_PRIV_GET_OR_RETURN(sd, priv, EINA_FALSE);
if (max_scale < min_scale) {
WRN("min_scale is larger than max_scale");
@@ -3426,40 +3426,42 @@
float ewk_view_zoom_range_min_get(Evas_Object *o)
{
- EWK_VIEW_SD_GET(o, sd);
- EWK_VIEW_PRIV_GET(sd, priv);
+ EWK_VIEW_SD_GET_OR_RETURN(o, sd, -1.0);
+ EWK_VIEW_PRIV_GET_OR_RETURN(sd, priv, -1.0);
return priv->settings.zoom_range.min_scale;
}
float ewk_view_zoom_range_max_get(Evas_Object *o)
{
- EWK_VIEW_SD_GET(o, sd);
- EWK_VIEW_PRIV_GET(sd, priv);
+ EWK_VIEW_SD_GET_OR_RETURN(o, sd, -1.0);
+ EWK_VIEW_PRIV_GET_OR_RETURN(sd, priv, -1.0);
return priv->settings.zoom_range.max_scale;
}
-void ewk_view_user_scalable_set(Evas_Object *o, Eina_Bool user_scalable)
+Eina_Bool ewk_view_user_scalable_set(Evas_Object *o, Eina_Bool user_scalable)
{
- EWK_VIEW_SD_GET(o, sd);
- EWK_VIEW_PRIV_GET(sd, priv);
+ EWK_VIEW_SD_GET_OR_RETURN(o, sd, EINA_FALSE);
+ EWK_VIEW_PRIV_GET_OR_RETURN(sd, priv, EINA_FALSE);
priv->settings.zoom_range.user_scalable = user_scalable;
+
+ return EINA_TRUE;
}
Eina_Bool ewk_view_user_scalable_get(Evas_Object *o)
{
- EWK_VIEW_SD_GET(o, sd);
- EWK_VIEW_PRIV_GET(sd, priv);
+ EWK_VIEW_SD_GET_OR_RETURN(o, sd, EINA_FALSE);
+ EWK_VIEW_PRIV_GET_OR_RETURN(sd, priv, EINA_FALSE);
return priv->settings.zoom_range.user_scalable;
}
float ewk_view_device_pixel_ratio_get(Evas_Object *o)
{
- EWK_VIEW_SD_GET(o, sd);
- EWK_VIEW_PRIV_GET(sd, priv);
+ EWK_VIEW_SD_GET_OR_RETURN(o, sd, -1.0);
+ EWK_VIEW_PRIV_GET_OR_RETURN(sd, priv, -1.0);
return priv->settings.device_pixel_ratio;
}
Modified: trunk/Source/WebKit/efl/ewk/ewk_view.h (92762 => 92763)
--- trunk/Source/WebKit/efl/ewk/ewk_view.h 2011-08-10 10:24:10 UTC (rev 92762)
+++ trunk/Source/WebKit/efl/ewk/ewk_view.h 2011-08-10 11:53:31 UTC (rev 92763)
@@ -1622,7 +1622,7 @@
*
* @param o view.
*
- * @return minimum value of zoom range.
+ * @return minimum value of zoom range, or @c -1.0 on failure.
*/
EAPI float ewk_view_zoom_range_min_get(Evas_Object *o);
@@ -1631,7 +1631,7 @@
*
* @param o view.
*
- * @return maximum value of zoom range.
+ * @return maximum value of zoom range, or @c -1.0 on failure.
*/
EAPI float ewk_view_zoom_range_max_get(Evas_Object *o);
@@ -1641,8 +1641,10 @@
* @param o view.
* @param user_scalable boolean pointer in which to enable zoom. It defaults
* to @c EINA_TRUE.
+ *
+ * @return @c EINA_TRUE on success, or @c EINA_FALSE on failure
*/
-EAPI void ewk_view_user_scalable_set(Evas_Object *o, Eina_Bool user_scalable);
+EAPI Eina_Bool ewk_view_user_scalable_set(Evas_Object *o, Eina_Bool user_scalable);
/**
* Gets if zoom is enabled.
@@ -1650,7 +1652,7 @@
* @param o view.
* @param user_scalable where to return the current user scalable value.
*
- * @return @c EINA_TRUE if zoom is enabled, @c EINA_FALSE if not.
+ * @return @c EINA_TRUE if zoom is enabled, @c EINA_FALSE if not or on failure.
*/
EAPI Eina_Bool ewk_view_user_scalable_get(Evas_Object *o);
@@ -1660,7 +1662,7 @@
* @param o view.
* @param user_scalable where to return the current user scalable value.
*
- * @return @c EINA_TRUE if zoom is enabled, @c EINA_FALSE if not.
+ * @return device pixel ratio or @c -1.0 on failure.
*/
EAPI float ewk_view_device_pixel_ratio_get(Evas_Object *o);