diff options
Diffstat (limited to 'lib/Bookmarks/M/DB/Links.pm')
-rw-r--r-- | lib/Bookmarks/M/DB/Links.pm | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/lib/Bookmarks/M/DB/Links.pm b/lib/Bookmarks/M/DB/Links.pm index 5103522..ebfa963 100644 --- a/lib/Bookmarks/M/DB/Links.pm +++ b/lib/Bookmarks/M/DB/Links.pm @@ -12,12 +12,26 @@ for my $col_name (qw(add_date last_access_date)) { } sub set_icon { - my ($self,$icon)=@_; + my ($self,$icon,$type)=@_; + $self->icon(encode_base64($icon||'')); + $type||=''; + if ($type !~ m{^image/}) { + $type='image/x-icon'; + } + $self->icon_type($type); + + return; } sub get_icon { my ($self)=@_; - return decode_base64($self->icon()||''); + + my $type=$self->icon_type()||''; + if ($type !~ m{^image/}) { + $type='image/x-icon'; + } + + return (decode_base64($self->icon()||''),$type); } sub search_complex { |