Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 83b9a59

Browse files
authored
[Linux] remove duplicate clone_string() in favor of g_strdup() (#34031)
GLib's g_strdup() offers the same behavior that it returns NULL if the argument is NULL: https://docs.gtk.org/glib/func.strdup.html
1 parent 1daf7ba commit 83b9a59

File tree

2 files changed

+3
-27
lines changed

2 files changed

+3
-27
lines changed

shell/platform/linux/fl_key_channel_responder_test.cc

Lines changed: 1 addition & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -29,20 +29,6 @@ static void responder_callback(bool handled, gpointer user_data) {
2929
g_main_loop_quit(static_cast<GMainLoop*>(user_data));
3030
}
3131

32-
// Clone string onto the heap.
33-
//
34-
// If #string is nullptr, returns nullptr. Otherwise, the returned pointer must
35-
// be freed with g_free.
36-
static char* clone_string(const char* string) {
37-
if (string == nullptr) {
38-
return nullptr;
39-
}
40-
size_t len = strlen(string);
41-
char* result = g_new(char, len + 1);
42-
strncpy(result, string, len + 1);
43-
return result;
44-
}
45-
4632
namespace {
4733
// A global variable to store new event. It is a global variable so that it can
4834
// be returned by #fl_key_event_new_by_mock for easy use.
@@ -69,7 +55,7 @@ static FlKeyEvent* fl_key_event_new_by_mock(guint32 time_in_milliseconds,
6955
_g_key_event.time = time_in_milliseconds;
7056
_g_key_event.state = state;
7157
_g_key_event.keyval = keyval;
72-
_g_key_event.string = clone_string(string);
58+
_g_key_event.string = g_strdup(string);
7359
_g_key_event.keycode = keycode;
7460
_g_key_event.origin = nullptr;
7561
_g_key_event.dispose_origin = nullptr;

shell/platform/linux/fl_key_event.cc

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,6 @@ static void dispose_origin_from_gdk_event(gpointer origin) {
99
gdk_event_free(reinterpret_cast<GdkEvent*>(origin));
1010
}
1111

12-
static char* clone_string(const char* source) {
13-
if (source == nullptr) {
14-
return nullptr;
15-
}
16-
size_t length = strlen(source);
17-
char* result = g_new(char, length + 1);
18-
strncpy(result, source, length + 1);
19-
return result;
20-
}
21-
2212
FlKeyEvent* fl_key_event_new_from_gdk_event(GdkEvent* raw_event) {
2313
g_return_val_if_fail(raw_event != nullptr, nullptr);
2414
GdkEventKey* event = reinterpret_cast<GdkEventKey*>(raw_event);
@@ -32,7 +22,7 @@ FlKeyEvent* fl_key_event_new_from_gdk_event(GdkEvent* raw_event) {
3222
result->keycode = event->hardware_keycode;
3323
result->keyval = event->keyval;
3424
result->state = event->state;
35-
result->string = clone_string(event->string);
25+
result->string = g_strdup(event->string);
3626
result->group = event->group;
3727
result->origin = event;
3828
result->dispose_origin = dispose_origin_from_gdk_event;
@@ -53,6 +43,6 @@ void fl_key_event_dispose(FlKeyEvent* event) {
5343
FlKeyEvent* fl_key_event_clone(const FlKeyEvent* event) {
5444
FlKeyEvent* new_event = g_new(FlKeyEvent, 1);
5545
*new_event = *event;
56-
new_event->string = clone_string(event->string);
46+
new_event->string = g_strdup(event->string);
5747
return new_event;
5848
}

0 commit comments

Comments
 (0)