Hi Sergey, thanks for the reply ! I created a bug + webrev . Please review .
https://bugs.openjdk.java.net/browse/JDK-8228468 http://cr.openjdk.java.net/~mbaesken/webrevs/8228468.0/ Best regards, Matthias From: Sergey Bylokhov <[email protected]> Sent: Freitag, 19. Juli 2019 23:06 To: Baesken, Matthias <[email protected]> Cc: [email protected]; [email protected] Subject: Re: <AWT Dev> awt_Robot.c : format string contains '\0' within the string body Hi, Matthias. I think it is unneeded and can be removed. ----- [email protected]<mailto:[email protected]> wrote: > > > Hello, is there a special reason to put a '\0' at the end of the “atom_name” - parameter of the XInternAtom call in isXCompositeDisplay ? jdk/src/java.desktop/unix/native/libawt_xawt/awt/awt_Robot.c : static jboolean isXCompositeDisplay(Display *display, int screenNumber) { char NET_WM_CM_Sn[25]; snprintf(NET_WM_CM_Sn, sizeof(NET_WM_CM_Sn), "_NET_WM_CM_S%d\0", screenNumber); Atom managerSelection = XInternAtom(display, NET_WM_CM_Sn, 0); I think on UNIX the snprintf implementations are conforming and zero-terminate ( exception was VS before VS2015 but this is unix/native code ). Reason why I ask is this warning we have in our AIX xlc16/xlclang build : /jdk/src/java.desktop/unix/native/libawt_xawt/awt/awt_Robot.c:153:65: warning: format string contains '\0' within the string body [-Wformat] snprintf(NET_WM_CM_Sn, sizeof(NET_WM_CM_Sn), "_NET_WM_CM_S%d\0", screenNumber); Thanks, Matthias
