eel r2156 - in trunk: . eel
- From: cneumair svn gnome org
- To: svn-commits-list gnome org
- Subject: eel r2156 - in trunk: . eel
- Date: Mon, 1 Sep 2008 10:21:46 +0000 (UTC)
Author: cneumair
Date: Mon Sep 1 10:21:46 2008
New Revision: 2156
URL: http://svn.gnome.org/viewvc/eel?rev=2156&view=rev
Log:
2008-09-01 Christian Neumair <cneumair gnome org>
* eel/eel-vfs-extensions.c (eel_filename_strip_extension),
(eel_filename_get_rename_region):
* eel/eel-vfs-extensions.h:
Add eel_filename_strip_extension(), and use it in
eel_filename_get_rename_region(). Part of #309510. Thanks to Paolo
Borelli <pborelli katamail com> and Jared Moore <jaredm gmx com>.
Modified:
trunk/ChangeLog
trunk/eel/eel-vfs-extensions.c
trunk/eel/eel-vfs-extensions.h
Modified: trunk/eel/eel-vfs-extensions.c
==============================================================================
--- trunk/eel/eel-vfs-extensions.c (original)
+++ trunk/eel/eel-vfs-extensions.c Mon Sep 1 10:21:46 2008
@@ -123,15 +123,17 @@
return res;
}
-void
-eel_filename_get_rename_region (const char *filename,
- int *start_offset,
- int *end_offset)
+char *
+eel_filename_strip_extension (const char * filename_with_extension)
{
- const char *end, *end2;
+ char *filename, *end, *end2;
- *start_offset = 0;
+ if (filename_with_extension == NULL) {
+ return NULL;
+ }
+ filename = g_strdup (filename_with_extension);
+
end = strrchr (filename, '.');
if (end && end != filename) {
@@ -148,8 +150,29 @@
end = end2;
}
}
- *end_offset = g_utf8_pointer_to_offset (filename, end);
- } else {
- *end_offset = g_utf8_strlen (filename, -1);
+ *end = '\0';
}
+
+ return filename;
+}
+
+void
+eel_filename_get_rename_region (const char *filename,
+ int *start_offset,
+ int *end_offset)
+{
+ char *filename_without_extension;
+
+ g_return_if_fail (start_offset != NULL);
+ g_return_if_fail (end_offset != NULL);
+
+ *start_offset = 0;
+ *end_offset = 0;
+
+ g_return_if_fail (filename != NULL);
+
+ filename_without_extension = eel_filename_strip_extension (filename);
+ *end_offset = g_utf8_strlen (filename_without_extension, -1);
+
+ g_free (filename_without_extension);
}
Modified: trunk/eel/eel-vfs-extensions.h
==============================================================================
--- trunk/eel/eel-vfs-extensions.h (original)
+++ trunk/eel/eel-vfs-extensions.h Mon Sep 1 10:21:46 2008
@@ -47,6 +47,7 @@
char * eel_format_uri_for_display (const char *uri);
char * eel_make_valid_utf8 (const char *name);
+char * eel_filename_strip_extension (const char *filename);
void eel_filename_get_rename_region (const char *filename,
int *start_offset,
int *end_offset);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]